第十节 两个数码管动态显示
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第十节两个数码管动态显示
一、编写程序
步骤一:打开bascom-avr编程环境;
步骤二:新建空白编程文件;
步骤三:设置系统频率,系统的波特率
步骤四:输入程序
程序举例:
将下面程序在bascom-avr中编译及仿真'——————————————————————————————————
'名称:数码管驱动程序
'目的:数码管驱动程序,练习bascom-avr与实验板的使用,了解I/0口及数码管。'目标芯片: ATmega16
'作者: 张恩锋
'编译环境: BASCOM-A VR 1.11.8.4
'protues 7仿真通过'———————————————————————————————————
$regfile = "m16def.dat" ' 单片机型号
$crystal = 8000000 ' 定义晶振频率
Config Porta = Output '定义A口为输出口Config Portb = Output
Do '循环DO__LOOP Porta = &H06 '让A口的输出,数码管1显示数字1,二进制00000110 Portb = &H5B 'B口输出,数码管2显示2 Wait 1 '等待
Porta = &H4F '让A口的输出,数码管1显示数字3,二进制01001111 Portb = &H66 'B口输出,数码管2显示数字4
Wait 1
Loop
End '————————————————————————————————————
'共阴极字形码
'&H3F 0
'&H06 1
'&H5B 2
'&H4F 3
'&H66 4
'&H6D 5
'&H7D 6
'&H07 7
'&H7F 8
'&H6F 9
'&H77 a
'&H7C b
'&H39 c
'&H5E d
'&H79 e
'&H71 f '————————————————————————————————————
步骤五:保存程序
步骤六:编译文件
如下图所示:在菜单栏中单击“compile program”或按F7键编译文件,若提示错误请认真检查并及时更正错误。
二、仿真模拟
在桌面中打开protues仿真软件
2.1 添加元件
点击新建文件
单击“P”从库中选取元件
在关键字中输入“7seg-com-cat-grn”添加一个共阴级数码管
选择结果中的元件并双击。
同样的方法在关键字中输入“atmega16”添加A VR单片机
单击“确定”退出添加元件界面。
单击添加的元件,在编辑界面鼠标会变成笔状。
在编辑界面单击鼠标,会出现器件的外形,选择好器件所放位置并单击鼠标就可放置元件
单击鼠标后
若是有特殊需要,可以在单片机元件图中点击鼠标右键把单片机进行旋转,如下图:
同样的方法放置数码管。
2.2 线路连接
在器件的管脚上单击鼠标,当鼠标变成绿色笔状且在笔尖处出现小红方框就可拖动鼠标连接线路。
同理,在把线拖到要连接的另一个元件的管脚时鼠标变成绿色笔状即可单击鼠标连接线路。
完成连接效果图:
2.3 仿真运行
双击单片机出现“编辑元件”界面
在program file这一栏中,找到前面编程所编译的扩展名为“.HEX”的文件并选择它
回到“编辑元件”界面点击确定。
最后,单击主界面左下角的“开始”按钮即可进行仿真,若不能运行应仔细检查是否线路连接错误。
三、回味提升
1、两个数码管可以,三个数码管可以显示吗?四个、五个呢?思考解决方法。
2、其它尝试