当前位置:首页 > 智能仪表实验
智能仪表开发
实验报告
学生姓名:李聪 学号:12054224 专业班级:测控1202
2015.6.9
实验一 I/O端口及操作实验
【实验目的】
1、学会操作 MSP430F5438 一般端口,了解端口寄存器的组成。 2、了解 MSP430F5XX 单片机与以前系列单片机的区别。
【实验内容】
1 、要求:运用C语言编程完成对智能仪表多功能实验箱系统流水灯模块的 控制。
2、功能:通过单片机I/O口线实现对发光二极管亮灭的控制,可通过按键控制发光二极管的亮灭。
3、现象:8个红色发光可根据程序控制点亮或者熄灭,通过按键操作实现发=]光二极管亮灭状态的切换。
【实验原理】
1 、单片机模块原理
MSP430F5XX单片机端口引入上拉下拉电阻,通过PXREN,RXDIR,PXOUT 可以设置端口各引脚的状态.通过选择内部上/下拉使能,就不需要再外部接上拉电阻,选择对应的边沿触发方式就可以很方便的进出中断,其中只有P1,P2 具有端口中断能力。P1,P2 均是多元中断,因此引入P1IV P2IV ,各引
脚中断只有访问对应PXIV 后才可以进行自动清除中断标志位。 否则就不能清除中断标志,就会反复进入中断程序,如果不访问PXIV 可以软件清除中断标志位。
2、I/O端口寄存器配置
MSP430F5XX单片机端口通过PXREN(上/下拉使能),PXDIR(方向),PXOUT(输出/输入)这三个寄存器来配置单片机I/O口的使用状态。 3、硬件连接
智能仪表多功能实验箱系统为本次实验提供3个独立按键和8个发光二极管。可由用户自由编程实现特定功能。
【实验步骤】
1、了解学习板相应端口管脚原理图。 2、进行 C 语言单片机程序编写。
3、利用 JTAG 口将程序烧写进入单片机中。
4、进行程序调试。观察发光二极管亮灭变化情况以及按键操作对发光二极管亮灭变化的影响。
【程序代码】
#include \
#define CPU_F ((double)12000000)
#define delay_ms(x) __delay_cycles((long)(CPU_F*(double)x/1000.0)) void CLock_init(void); void LedLoop(void);
void s1(void); int main( void ) {
// Stop watchdog timer to prevent time out reset WDTCTL = WDTPW + WDTHOLD;
P3DIR=BIT0+BIT1+BIT2+BIT3+BIT4+BIT5+BIT6+BIT7; P11DIR=BIT0+BIT1+BIT2; P11SEL=BIT0+BIT1+BIT2; CLock_init(); P3OUT&=0x00; int i=0; while(1) {
if(!(P1IN&0x01)) {
delay_ms(500); P3OUT=~P3OUT; }
if(!(P1IN&0x04)) {
P3OUT=~(BIT0<
共分享92篇相关文档