- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
部分实验硬件电和程序设计参考(王老师)
实验1-P1口交通信号灯设计-硬件和程序设计参考
硬件电路如下图所示:
实验时可以任选一列的红黄绿灯,比如选第一列,则A接电源正极+5V,可以用单片机的口线控制a\b\c\d端分别为低电平时就可以控制第一列的相应等的亮灭. 本程序中P1.0接绿灯(a端)0, P1.1接黄灯(b端), P1.2接红灯(c端).
程序如下:
/*本程序中P1.0接绿灯(a端)0, P1.1接黄灯(b端), P1.2接红灯(c端)*/
#pragma sfr /* 特殊功能能寄存器声明 */
void delay() /* 灯延时子函数定义,具体时间在实验中进行调整 */
{ int i,j;
for(i=0;i500;i++)
{for(j=0;j500;j++);} }
void main() /* 主函数*/
{
IMS=0XCC; /*内部存储器容量切换寄存器设置,必须有 */
IXS=0X00; /*内部扩展RAM 容量切换寄存器,必须有 */
PM1.0=0; PM1.1=0; PM1.2=0; /* 口线P1.0\P1.1\P1.2模式为输出模式*/
while(1) /* 当为1时,条件为真,一直循环 */
{P1.0=0; P1.1=1; P1.2=1; /*输出高电平灯不亮,低电平灯亮, 此时绿灯亮*/
delay();/*绿灯亮延时*/
P1.0=1; P1.1=0; P1.2=1; /*输出高电平灯不亮,低电平灯亮, 此时黄灯亮*/
delay();/*黄灯亮延时*/
P1.0=1; P1.1=1; P1.2=0; /*输出高电平灯不亮,低电平灯亮, 此时红灯亮*/
delay();/*红灯亮延时*/
} }
思考: 1 黄灯闪烁怎样修改程序? 2 各个灯亮灭的时间不一样又怎样改变程序? 3 同学们可以撇开这个程序,发挥自己的想象,自己编出自己的不同的信号灯功能?
4 用定时器来实现延时又怎样来修改程序?
5 灯延时子函数可以编写成延时时间可变的吗? 怎样来改变呢?
实验3-定时器数字时钟试验-秒表设计-硬件和程序设计参考
硬件设计参考:
参考程序如下:
#pragma sfr /* 特殊功能寄存器声明*/
#pragma di /*禁止所有中断(总中断)函数声明,相当于IE=0 */
#pragma ei /* 所有中断允许的总中断允许函数定义,相当与IE=1*/
#pragma interrupt INTTM000 TIME_INTTM000
/*后面定义的中断服务程序声明,这个中断服务程序就是本实验的定时器比较匹配中断的*/
unsigned char LED_light[10]={0xfc,0x18,0x6e,0x5e,0x9a,0xd6,0xf6,0x1c,0xfe,0xde};
/* 数码管显示的字形码,请和硬件连接相对应*/
unsigned char i; /*中断产生次数*/
void delay(int i) /*动态扫描件间隔*/
{
while(i--); /*循环i次,就是靠软件来延时,就是软件延时*/
}
void hd_init() /*硬件初始化子函数*/
{
PM1=0; /*P1口(8根口线),驱动数码管八段二极管,故定义为输出 */
PU1=0; /* 为增加驱动能力,设置为内部上拉*/
PM5.0=0; /* 定义为输出,控制其中一个数码管的公共端,控制整个这个数码管的*/
/*的亮灭,和另外一个P5.1引脚控制另一个数码管的亮灭,二者交替亮灭实现扫描显示*/
PU5.0=0; /*为增加驱动能力,设置为内部上拉*/
PM5.1=0; /* 定义为输出,控制其中一个数码管的公共端,控制整个这个数码管的*/
/*的亮灭,和另外一个P5.1引脚控制另一个数码管的亮灭,二者交替亮灭实现扫描显示*/
PU5.1=0; /*为增加驱动能力,设置为内部上拉*/
CR000=0x9000; /*设置捕捉次数,达到捕捉次数即产生中断*/
TMC00=0X0C; /*模式寄存器设置,请同学们预习这样设置是什么含义*/
PRM00=0X02; /*计数时钟选择,请同学们预习这样设置是什么含义*/
TOC00=0; /*禁止输出,请同学们预习这样设置是什么含义*/
TMIF000=0; /*中断请求,请同学们预习这样设置是什么含义*/
TMMK000=0; /*中断屏蔽,请同学们预习这样设置是什么含义*/
TMPR000=1; /*中断优先级,请同学们
您可能关注的文档
最近下载
- 股市主力操盘盘 口摩斯密码(原创内容,侵权必究).pptx
- 人教部编版小学四年级语文上册期末复习计划及全册单元复习课教案.docx VIP
- 幼儿园教师业务水平知识考试题(附答案).docx VIP
- 西北师范大学2022-2023学年第1学期《宏观经济学》期末考试试卷(A卷)附标准答案.docx
- 高三一轮复习生物【知识精研】免疫失调与免疫学的应用课件.pptx VIP
- 市政工程占道施工方案【可编辑】.doc
- 崩漏(功能失调性子宫出血)中医临床路径.pdf VIP
- 课件兽医法律法规.ppt
- 《人类简史》6分钟读完《人类简史》全部精华.docx VIP
- ipc6013中文版挠性印制板质量要求与性能规范汇编.doc
原创力文档


文档评论(0)