C语言控制单片机的详细原理是怎样的?

我初学单片机,老师说要学习单片机C语言,我一直不明白C语言控制单片机的原理是怎样的,我想了解C语言控制单片机的详细过程《流程图》。
如:C语言源程序----->…(步骤)------->
希望有文字说明!
请详细说明一下,每一步是怎么实现的,谢谢!

C语言源程序----->C编译器----->汇编代码----->汇编器----->机器代码
所谓的单片机C语言的意思是拿C语言来编写单片机程序,没有什么C语言控制单片机这回说法。具体过程是:C语言源程序通过特定的C编译器编译为针对某种单片机的汇编代码,再由汇编器将汇编代码汇编为单片机可执行的机器代码,然后下载到单片机的存储器运行。当前一般的集成开发环境(如Keil C)可以一次搞定生成机器代码。
需要补充一点的是,单片机也是一种计算机,不要以为只有在PC机上才可以用C语言编程,C语言可以用作为任何计算机的编程语言,当然包括单片机,但有一个条件就是,你必需要有针对某种架构的计算机的C编译器。目前来讲,C语言的编译器种类非常多,有用于各种单片机以及微处理器架构的编译器版本,所以可以用C来做为单片机的编程语言。不同的是,你用TC或者VC编译得到的是X86(如Intel,AMD)的目标代码,只能在PC机上运行,而如果用单片机C编译器(比如Keil C)编译的代码是单片机代码,只能在特定的单片机上运行。目前C/C++是最流行的单片机/微处理器编程语言。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-11-12
不知你的C语言功底怎么样,如果平常能用c编一个小游戏的话,那用c去编单片机程序那就是轻而易举的了!估计你有个误区,没有什么单片机c语言这种说法,可以这样理解吧,只不过是改了一个编译环境!程序运行的结果不在PC机上看得出来,而是转移到了一块单片机板上!举个例子,点亮一盏单片机上的发光二极管,有十几行代码就行了!你的问题不在编程问题,而是对硬件(单片机)不是很了解!不要把它想得那么神秘,只要C功底好,入门单片机很快!如果需要的话,可以发个程序给你看看,很简答。
第2个回答  2010-11-12
C语言——汇编语言——机器码——烧入代码——CPU能读取并执行代码(原理就是数字电路了)
相似回答