一般8位PIC单片机使用C语言还是汇编语言编程,好像编译器不是支持所有类型的单片机

 我来答
micropower
推荐于2018-04-23 · TA获得超过1万个赞
知道大有可为答主
回答量:2619
采纳率:50%
帮助的人:1546万
展开全部
PIC单片机的C语言编译器是分类支持各类PIC单片机的。
一般做工业产品的公司大多用汇编来编写程序,原因有:
1:pic的8位单片机一般ROM和RAM都相对较小,而现在的PIC的C编译器在优化方面做的不是很好,简单的一个C语句编译器能编出很多行汇编代码。所以有些开发人员认为用c还不如直接用汇编写。
2:因为PIC的C编译器不是免费的,破解版的又存在一些逻辑漏洞什么的。而用pic单片机应用的大多是一些需要稳定性极高的控制场合,所以很多开发公司都干脆直接使用汇编来写。
追问
谢谢您的回答,那如果是16位的单片机呢;还有一般什么样的应用场合会常用C语言编程的呢
追答
16位的PIC有PIC24和dsPIC30/33系列,ROM和RAM等资源相对8位多些。我一般是用C写16位的PIC单片机。
具体什么场合用我说不上,这都是开发者根据自己习惯和项目需要来做的。一般用C的都是那些安全性稳定性要求不是太严的场合用。我有个朋友是做电机执行器的,他们就完全用汇编来写。几万行的代码都是用汇编堆出来的。8位PIC没有乘除法的汇编指令,他自己用循环加减或循环移位等的方法来做各种四则运算。他51用的都是C但从没用过PIC的C编译器。
另外有些PIC芯片的某些功能你不得不用汇编来写,或者在C里嵌入汇编。比如一些用到内部振荡器的pic单片机,使用内部振荡器必须加载内部校准字,而加内部校准字的指令在C里面是没有的,不管你乐不乐意,用了这东西就必须用到汇编指令。
tdfzq
2012-02-13 · TA获得超过839个赞
知道小有建树答主
回答量:771
采纳率:75%
帮助的人:200万
展开全部
一般是简单的程序用汇编,复杂的程序用C,
PIC编译器分PICC ,C18,C30
PICC 10F,12F,16F PICC 也有18F
c18 18f
c30 30f 24f 33f
根据个人情况选择。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式