一个工业顺序控制的c51单片机c语言教程程序,简单的就行了,用C语言写

   电路的核心部分是AT89C2051单片机,前面提到它有Pl和P3两组I/O口,我们这里只用到Pl口,共8个引脚。图中Cl、R9组成典型的上电复位(即在加电时单片机复位)电路,XTAL、C2、C3与AT89C2051片内振荡电路组成时钟。值得注意的是,C2、C3的容量不能与图中数值偏差太大,否则可能引起不起振或振荡不稳定。XTAL的可以在4-20M之间,不过,频率的变化会导致程序运行速度的变化,这样就需要调整延时子函数的参数。事实上,不调整参数亦可,只是此时延迟时间不再是1秒,其延迟时间会随着XTAL频率的降低而增加。    二、软件部分    本程序包含两个函数,一个是主函数,另一个是延时子函数。源程序如下(为了便于讲解,我们为每行程序加上了编号):
  程序各行作用如下:    00行:把AT89C2051的头文件&AT89x051.H&包含进来。    01行:声明Delay()延时子函数,该函数有一个无符号整型参数k,同时函数前面的void表明函数不返回函数值。    02行:延时子函数的开始,同时声明两个无符号整型变量i和j。    不过请注意,这里没有象上期的程序一样,把表示函数开始的&{&单独成行,而是把下一行写在一起了。事实上,写C程序的时候,可以把多行写作一行,C编译器只要遇到分号就认为是一行语句的结束。    当然,我们不能因为C程序有这个特点,就随意把多行合作一行书写,实际书写C程序的时候,还是要养成良好的程序书写习惯,按照约定俗成的原则来书写。    03行:声明for()循环。这个循环的初始条件是i=0,终止条件是i<k,循环计数是每循环一次,用手计数的变量i加1。因此,这个循环的循环次数就是k次。这样,只要改变k的值(即改变Delay()延时子函数的参数k的值),就可以很容易地控制循环次数,从而获得不同的延时时间。    04行:声明嵌套在03循环中的一个新的for()循环,这个循环与上一个循环相似,其循环次数是120次。本循环与上一个循环嵌套后,使得总的循环次数达120&k次。    05行:第一个分号,表示L条空语句,占用一个机器时间,以实现延时的目的。后面的两个&}&中,第一个&}&是04行for()循环的结束标志,程序遇到它时,将自动返回04行,使用于循环计数的变量j加1,同时判断j是否小于120,如果否,则转入05行;第二个是03行for()循环的结束标志,程序遇到它则会返回03行。    06行:Delay()延时子函数的结束标志。    07行:声明主函数main()。这里的主函数不需要参数,也不返回函数值。    08行:主函数的开始标志&{&。    与01行的Delay()延时子函数一样,习惯上也会把下一行的语句与本行的花括号写在一起。    09行:声明一个无条件for()循环,&;;&以使单片机重复执行任务,使流水灯能不停地流动。    10行:大括号表示09行for()循环的开始,语句&Pl_0=0&是让单片机Pl口的O号引脚(即Pl.0)输出低,根据电路可知,此时LED1会被点亮。    11行:以参数值1000调用01行声明的Delay()延时子函数,使程序运行到此处时,延时1000毫秒(即1秒)。    12-41行:与10、11行的作用相同。    简而言之,10-41行的作用就是依次点亮LEDl-LED8这八个。    42行:09行结束标志,程序运行到此处时,自动返回09行,因为09行的for()循环是无条件循环,所以程序马上会转到10行继续运行。    三、软件仿    真首先按照前面的方法建立一个新的工程,并把上面的程序按照前面的方法输入并存盘。然后按照下面的方法进行仿真调试。    1.把建立好的C程序加入工程    双击左边工程窗口中的&Target1&,展开&Target1&夹,然后右击&SourceGroupl&,选择&增加文件到组&SourceGroup1&(AddFilestoSourceGroup1)&,并把刚才输入的C程序加入到工程中。    2.连编目标程序    连编之前要设置目标的输出属性,否则连编出来的目标程序中不含有用于固化到单片机中的十六进制文件。    设置目标输出属性的方法是:    先单击工程窗口中的&Target1&以选中它,然后选择&工程&菜单中的&目标&Targetl&属性(OptionsfortargetTargetl)&,系统弹出对话框,在对话框中选择&输出(Output)&选项卡,并选中&生成HEX文件(CreateHEXFile)&选项(生成十六进制文件),当然,如果你的单片机编程器不支持十六进制文件的话,就要用转换软件把生成的十六进制文件转换成了。    设置好目标属性后,按&F7&开始连编目标程序。连编的结果信息会在输出窗口中显示出来,若显示&0错误(s),0警告(s)(0Error(s),0Warning(s))&表示连编成功,否则说明连编不成功。若连编不成功,在输出窗口中会显示错误所在行及错误原因,然后根据具体的错误进行修改,修改完成后,再次连编,直到连编成功。    3.仿真调试    连编好目标程序后就可以开始仿真调试了,其步骤是:      1)选择&调试(Debug)&菜单中的&开始/停止调试(Start/StopDebugSession)&,进入仿真调试状态。    2)选择&外围设备(Peripherals)&菜单中的&I/OPorts&选项中的&Port1&,打开I/O口状态模拟器。状态模拟器中的&&&表示相应的I/O口引脚状态为&1&电平状态。    如:图中表示Pl口(Portl)的8个引脚全为&1&电平状态。    3)按&Fll&进行单步跟踪调试。每按一次&Fll&,程序会执行一步(即一条语句),若程序的执行影响了I/O口的状态,在I/O口状态模拟器上会有相应的显示。因为每按Fll一次,程序只执行一步,所以在调试循环程序时,可能会有很多的步数,如本例中每调试一次Delay()子函数中的两个循环,其步数高达六万步,因此要设法减少步数,本例中可先将Delay()子函数的参数值由1000改为1,等调试成功后再改回1000,这样就可以大大减少循环步数。    4)再次选择&调试(Debug)&菜单中的&开始/停止调试(Start/StopDebugSession)&,退出仿真调试状态。    四、程序固化    当程序通过了仿真调试,就可以利用编程器把它固化到单片机,并插入做好的线路板上,欣赏你的劳动成果了。
本网站试开通微、小企业商家广告业务;维修点推荐项目。收费实惠有效果!欢迎在QQ或邮箱联系!
试试再找找您想看的资料
资料搜索:
查看相关资料 & & &
copyright & &广电电器(中国梧州) -all right reserved& 若您有什么意见或建议请mail: & &
地址: 电话:(86)774-2826670&单片机课程设计工业顺序控制及显示设计,求C语言程序!_百度知道
单片机课程设计工业顺序控制及显示设计,求C语言程序!
要求求C语言程序汇编要急师给两参考程序工业顺序控制程序参考显示程序知道起程序太能发能够帮忙发给
我有更好的答案
种问题让我想句转专业吧题目基础
其他类似问题
为您推荐:
单片机课程设计的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁基于单片机的工业顺序控制系统设计_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
基于单片机的工业顺序控制系统设计
上传于||文档简介
&&在​工​业​控​制​过​程​,​如​冲​压​、​注​塑​、​轻​纺​、​制​瓶​等​生​产​过​程​,​都​是​一​些​断​续​生​产​过​程​,​按​某​种​程​序​有​规​律​地​完​成​预​定​的​动​作​,​对​这​类​断​续​生​产​过​程​的​控​制​称​顺​序​控​制​,​例​如​注​塑​机​工​艺​过​程​大​致​按​“​合​模​→​注​射​→​延​时​→​开​模​→​产​伸​→​产​退​”​顺​序​动​作​,​用​单​片​机​最​容​易​实​现​这​类​过​程​的​控​制​。
阅读已结束,如果下载本文需要使用1下载券
想免费下载本文?
下载文档到电脑,查找使用更方便
还剩7页未读,继续阅读
你可能喜欢会C语言 但 看不懂单片机C语言程序!_百度知道
会C语言 但 看不懂单片机C语言程序!
我C语言看懂单片机程序单片机pic16f716
单片机编程
提问者采纳
C语言容易啦要看C语言哪层另外于单片机程序种硬件连接紧密程序仅C语言够需要解单片机硬件用C语言编程相汇编容易简单看看PIC16F716使用手册简单程序始慢慢行吃力建议先解简单51单片机解单片机硬件原理再C语言写 单片机程序
提问者评价
来自团队:
其他类似问题
为您推荐:
其他3条回答
看看文件再照手册看看文件各寄存器标志位作用看程序操作些寄存器C语言足够
网上搜搜你单片机控制器的资料,根据用户手册进行编程,C语言知识一种工具而已。
看看单片机C编程的书,这类的书网上有好多资料。。。
c语言程序的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁君,已阅读到文档的结尾了呢~~
单片机课程设计工业顺序控制
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
单片机课程设计工业顺序控制
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口}

我要回帖

更多关于 单片机c语言应用100例 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信