凌阳单片机快速编程.docx

上传人:b****5 文档编号:2868441 上传时间:2022-11-16 格式:DOCX 页数:74 大小:29.49KB
下载 相关 举报
凌阳单片机快速编程.docx_第1页
第1页 / 共74页
凌阳单片机快速编程.docx_第2页
第2页 / 共74页
凌阳单片机快速编程.docx_第3页
第3页 / 共74页
凌阳单片机快速编程.docx_第4页
第4页 / 共74页
凌阳单片机快速编程.docx_第5页
第5页 / 共74页
点击查看更多>>
下载资源
资源描述

凌阳单片机快速编程.docx

《凌阳单片机快速编程.docx》由会员分享,可在线阅读,更多相关《凌阳单片机快速编程.docx(74页珍藏版)》请在冰豆网上搜索。

凌阳单片机快速编程.docx

凌阳单片机快速编程

 

凌阳单片机快速编程(目录)

 

一、IO口设置

二、AD设置

三、CMT定时器设置

四、MCP定时器设置

五、PDC定时器设置

六、中断系统的操作

七、SPI的设置

八、UART的设置

九、内部Flash自编程操作

十、Buzzer频率输出操作

十一、看门狗的设置

十二、低功耗模式

十三、程序设计技巧

 

IO口设置

1.将IOA口设置为上拉输入

汇编代码:

//将IOA口设置为上拉输入

r1=0x0000

[P_IOA_Dir]=r1//设置P_IOA_Dir寄存器,将IOA口设置为输入

[P_IOA_Attrib]=r1//设置P_IOA_Attrib寄存器,将IOA口设置为非悬浮

r1=0xFFFF

[P_IOA_Buffer]=r1//设置P_IOA_Buffer寄存器,将IOA口设置为上拉

C语言代码:

//将IOA口设置为上拉输入

P_IOA_Dir->W=0x0000;//设置P_IOA_Dir寄存器,将IOA口设置为输入

P_IOA_Attrib->W=0x0000;//设置P_IOA_Attrib寄存器,将IOA口设置为非悬浮

P_IOA_Buffer->W=0xFFFF;//设置P_IOA_Buffer寄存器,将IOA口设置为上拉

2.将IOA口设置为下拉输入

汇编代码:

//将IOA口设置为下拉输入

r1=0x0000

[P_IOA_Dir]=r1//设置P_IOA_Dir寄存器,将IOA口设置为输入

[P_IOA_Attrib]=r1//设置P_IOA_Attrib寄存器,将IOA口设置为非悬浮

[P_IOA_Buffer]=r1//设置P_IOA_Buffer寄存器,将IOA口设置为下拉

C语言代码:

//将IOA口设置为下拉输入

P_IOA_Dir->W=0x0000;//设置P_IOA_Dir寄存器,将IOA口设置为输入

P_IOA_Attrib->W=0x0000;//设置P_IOA_Attrib寄存器,将IOA口设置为非悬浮

P_IOA_Buffer->W=0x0000;//设置P_IOA_Buffer寄存器,将IOA口设置为下拉

3.将IOA口设置为悬浮输入

汇编代码:

//将IOA口设置为悬浮输入

r1=0x0000

[P_IOA_Dir]=r1//设置P_IOA_Dir寄存器,将IOA口设置为输入

r1=0xFFFF

[P_IOA_Attrib]=r1//设置P_IOA_Attrib寄存器,将IOA口设置为悬浮

C语言代码:

//将IOA口设置为悬浮

P_IOA_Dir->W=0x0000;//设置P_IOA_Dir寄存器,将IOA口设置为输入

P_IOA_Attrib->W=0xFFFF;//设置P_IOA_Attrib寄存器,将IOA口设置为悬

4.将IOA口设置为输出,初始化为高电平

汇编代码:

(1)反向输出

//将IOA口设置为反向输出,输出高电平

r1=0xFFFF

[P_IOA_Dir]=r1//设置P_IOA_Dir寄存器,将IOA口设置为输出

r1=0x0000

[P_IOA_Attrib]=r1//设置P_IOA_Attrib寄存器,将IOA口设置为反向输出

[P_IOA_Buffer]=r1//设置P_IOA_Buffer寄存器,IOA口输出高电平

(2)非反向输出

//将IOA口设置为非反向输出,输出高电平

r1=0xFFFF

[P_IOA_Dir]=r1//设置P_IOA_Dir寄存器,将IOA口设置为输出

[P_IOA_Attrib]=r1//设置P_IOA_Attrib寄存器,将IOA口设置为非反向输出

[P_IOA_Buffer]=r1//设置P_IOA_Buffer寄存器,IOA口输出高电平

C语言代码:

(1)反向输出

//将IOA口设置为反向输出,输出高电平

P_IOA_Dir->W=0xFFFF;//将IOA口设置为输出

P_IOA_Attrib->W=0x0000;//将IOA口设置为反向输出

P_IOA_Buffer->W=0x0000;//IOA口输出高电平

(2)非反向输出

//将IOA口设置为非反向输出,输出高电平

P_IOA_Dir->W=0xFFFF;//将IOA口设置为输出

P_IOA_Attrib->W=0xFFFF;//将IOA口设置为非反向输出

P_IOA_Buffer->W=0xFFFF;//IOA口输出高电平

5.将IOA口设置为输出,初始化为低电平

汇编代码:

(1)反向输出

//将IOA口设置为反向输出,输出低电平

r1=0xFFFF

[P_IOA_Dir]=r1//设置P_IOA_Dir寄存器,将IOA口设置为输出

r1=0x0000

[P_IOA_Attrib]=r1//设置P_IOA_Attrib寄存器,将IOA口设置为反向输出

r1=0xFFFF

[P_IOA_Buffer]=r1//设置P_IOA_Buffer寄存器,IOA口输出低电平

(2)非反向输出

//将IOA口设置为非反向输出,输出低电平

r1=0xFFFF

[P_IOA_Dir]=r1//设置P_IOA_Dir寄存器,将IOA口设置为输出

[P_IOA_Attrib]=r1//设置P_IOA_Attrib寄存器,将IOA口设为非反向输出

r1=0x0000

[P_IOA_Buffer]=r1//设置P_IOA_Buffer寄存器,IOA口输出低电平

C语言代码:

(1)反向输出

//将IOA口设置为反向输出,输出低电平

P_IOA_Dir->W=0xFFFF;//将IOA口设置为输出

P_IOA_Attrib->W=0x0000;//将IOA口设置为反向输出

P_IOA_Buffer->W=0xFFFF;//IOA口输出低电平

(2)非反向输出

//将IOA口设置为非反向输出,输出低电平

P_IOA_Dir->W=0xFFFF;//将IOA口设置为输出

P_IOA_Attrib->W=0xFFFF;//将IOA口设置为非反向输出

P_IOA_Buffer->W=0x0000;//IOA口输出低电平

6.将IOA口设置为特殊功能使能

汇编代码:

//使用IOA口各位的特殊功能

//如果只使能其中几位的特殊功能,则只需P_IOA_SPE寄存器中的对应位置1

r1=[P_IOA_SPE]//取P_IOA_SPE的值

r1|=0x7E00//为了不影响其他位的设置

[P_IOA_SPE]=r1//设置P_IOA_SPE寄存器,使能IOA[9-14]的特殊功能

C语言代码:

//使用IOA口各位的特殊功能

//如果只使能其中几位的特殊功能,则只需P_IOA_SPE寄存器中的对应位置1

P_IOA_SPE->W|=0x7E00;

7.将IOA[2]设置为上拉输入,不改变其它端口(位操作)

汇编代码:

//将IOA[2]设置为上拉输入,不改变其它端口

r1=[P_IOA_Dir]//取P_IOA_Dir的值

r1&=0xFFFB//为了不影响其他位的设置

[P_IOA_Dir]=r1//设置P_IOA_Dir寄存器,将IOA[2]设置为输入

r1=[P_IOA_Attrib]

r1&=0xFFFB

[P_IOA_Attrib]=r1//设置P_IOA_Attrib寄存器,将IOA[2]设置为非悬浮

r1=[P_IOA_Buffer]

r1|=0x0004

[P_IOA_Buffer]=r1//设置P_IOA_Buffer寄存器,将IOA[2]设置为上拉

C语言代码:

//将IOA[2]设置为上拉输入,不改变其它端口

P_IOA_Dir->W&=0xFFFB;//将IOA[2]设置为输入,不影响其他位

P_IOA_Attrib->W&=0xFFFB;//将IOA[2]设置为非悬浮,不影响其他位

P_IOA_Buffer->W|=0x0004;//将IOA[2]设置为上拉,不影响其他位

8.将IOA[2]设置为下拉输入,不改变其它端口(位操作)

汇编代码:

//将IOA[2]设置为下拉输入,不改变其它端口

r1=P_IOA_Dir//将P_IOA_Dir地址送R1

clrb[r1],2//将[P_IOA_Dir]第2位清0

r1=P_IOA_Attrib//将P_IOA_Attrib地址送R1

clrb[r1],2//将[P_IOA_Attrib]第2位清0

r1=P_IOA_Buffer//将P_IOA_Buffer地址送R1

clrb[r1],2//将[P_IOA_Buffer]第2位清0

C语言代码:

//将IOA[2]设置为下拉输入,不改变其它端口

P_IOA_Dir->B.bit2=0;//将IOA[2]设置为输入,不影响其他位

P_IOA_Attrib->B.bit2=0;//将IOA[2]设置为非悬浮,不影响其他位

P_IOA_Buffer->B.bit2=0;//将IOA[2]设置为下拉,不影响其他位

9.将IOA[2]设置为悬浮输入,不改变其它端口(位操作)

汇编代码:

//将IOA[2]设置为悬浮,不改变其它端口

r1=P_IOA_Dir//将P_IOA_Dir地址送R1

clrb[r1],2//将[P_IOA_Di]r第2位清0

r1=P_IOA_Attrib//将P_IOA_Attrib地址送R1

setb[r1],2//将[P_IOA_Attrib]第2位置1

C语言代码:

//将IOA[2]设置为悬浮,不改变其它端口

P_IOA_Dir->B.bit2=0;//将IOA[2]设置为输入,不影响其他位

P_IOA_Attrib->B.bit2=1;//将IOA[2]设置为悬浮,不影响其他位

10.将IOA[2]设置为输出高电平,不改变其它端口(位操作)

汇编代码:

(1)反向输出

//将IOA[2]设置为输出高电平(反向输出),不改变其它端口

r1=P_IOA_Dir//将P_IOA_Dir地址送R1

setb[r1],2//将[P_IOA_Dir]第2位置1

r1=P_IOA_Attrib//将P_IOA_Attrib地址送R1

clrb[r1],2//将[P_IOA_Attrib]第2位清0

r1=P_IOA_Buffer//将P_IOA_Buffer地址送R1

clrb[r1],2//将[P_IOA_Buffer]第2位置1

(2)非反向输出

//将IOA[2]设置为输出高电平(非反向输出),不改变其它端口

r1=P_IOA_Dir//将P_IOA_Dir地址送R1

setb[r1],2//将[P_IOA_Dir]第2位置1

r1=P_IOA_Attrib//将P_IOA_Attrib地址送R1

setb[r1],2//将[P_IOA_Attrib]第2位置1

r1=P_IOA_Buffer//将P_IOA_Buff

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1