2809|1

3836

帖子

19

TA的资源

纯净的硅(中级)

楼主
 

工作之后这样写程序 [复制链接]

这是第一篇先主要把主程序的思想介绍个大家,以后会结合实际的子程序的写法来继续说明。先说说我我是怎么学单片机的吧
我单片机入门时看了天祥电子的十天学会单片机如果有网友还没入门的话一定要看看这个教程在次也要感谢天祥大哥能给这样的教程给大家有机会见面请你喝酒啊哈哈……
   
但是学那个教程入门可以但是真的要写些东西去卖就有点难了
工作以后感觉最大的是程序体变了接下来就给大家来说一下这个程序体该怎么写
首先要定个主程序的时基,来定时执行下面的子程序。
比如说我的主程序的时基是2ms在扫描各子程序之前用查询定时器标志位的方式来查询是否到了2ms
到了2ms扫描各个子程序,没到2ms就继续查询等待!
这样做的好处是扫描各个子程序的时间固定,易于添加其它程序!
这样的做法的前提是你各个子程序扫描一次的时间要小于2ms
下面举个例子来说明一下
如果我要做一个闹钟子程序有3个
按键扫描
数码管扫描
时间计时
程序会每隔2ms来扫描一遍这三个子程序
按键扫描程序,读取管脚电平,如果没有按键按下跳出
有按键按下存储管脚状态,比较前次和本次状态是否相同,相同按键计时寄存器加一,不相同则清除按
键计时寄存器跳出,看好,判断有键无键都跳出子程序扫描,只是对按键计时寄存器来操作(以后会结
合程序详说明)。
在按键计时寄存器达到一定数值则说明此键有效
数码管扫描时主程序没2ms扫描一个数码管,扫描一个数码管后,接通数码管的电平就固定了,这样再执
行其它程序,数码管也会一直点亮,这样要比传统的数码管扫描程序用延时更加省单片机的时序。数码
管也会显示更加稳定,以前用简单延时写出数码管显示用手一碰就会有鬼影,用这种方法就不会。
计时程序在这样的主程序体下就更加随便写了
以为是每2ms进时间计时程序一次,所以每进一次就给相应的计时寄存器加一就可以方便计时了。

以上是我参加工作以后写的程序体,对于高手可能是简单的东西了,也欢迎来板砖!

此帖出自单片机论坛

最新回复

不明白  详情 回复 发表于 2010-5-12 12:52
点赞 关注
 

回复
举报

31

帖子

0

TA的资源

一粒金砂(中级)

沙发
 
不明白
此帖出自单片机论坛
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表