南昌大学实验报告
学生姓名: 胡文松 学 号: 6103413007 专业班级: 生物医学工程131班 实验类型:□ 验证 ■综合 □设计 □ 创新 实验日期: 实验成绩:
综合实验一 直流、步进电机综合控制系统设计
一、实验目的
1、初步熟悉实验GPIO 口的初始化设置,并熟悉实验箱各个模块的功能;
2、掌握步进机的控制原理及利用延时脉冲来改变步进电机速度;
3、掌握直流电机的控制原理及利用pwm 占空比控制来改变速度;
4、学习IIC 总线读取和写数据原理,并掌握对CAT1025 E2PROOM操作方法, 学会控制数码管的显示UART 串口函数,并初步掌握中断处理函数的写法。
二、实验基本原理
1、S3C 2410A 具有117个通用I/O口,分为A —H 等8个端口,由于每个I/O口都有第2功能,甚至第3功能,所以需要通过设置GPxCON 寄存器来选择GPx 口I/O口功能,其中x 可以为A 、B 、C 、D 、E 、F 、G 表示相应的I/O端口。当I/O口设置为GPIO 输出模式(Output 模式)时,可以通过写GPxDAT 控制相应I/O口输出高电平或低电平,GPxDAT 为1的位对应I/O输出高电平,为0的位对应输出低电平。
2、工程模板中包含有串口软件包UART.C ,用户可以调用相应的接口函数进行串口数据发送和接收,串口的波特率需要在config.h 文件中进行设置,本实验使用默认的115200波特率。对串口进行初始化时,首先要设置相应I/O口为TXD0,TRD0功能引脚,然后通过ULCON0来设置通讯波特率。设置UCON0寄存器时,要设置串口工作模式为查询模式,即UCON[3:0]应为0101b 。
3、S3C2410A 具有实时时钟(RTC )功能,能够提供时、分、秒,年、月、日的计时功能,还具有定时报警功能。RTC 单元采用独立的后备电池供电,独立式时钟源(采用32.768KHz 晶振),即使系统关闭电源,RTC 还可以正常工作。 要初始化RTC 的时间值,首先要给RTCON 寄存器写为0x01,使能RTC 接口(即允许写RTC 操作),然后对年寄存器BCDYEAR 、月寄存器BCDMON 、日寄存器BCDDATE 、时寄存器BCDHOUR 、分寄存器BCDMIN 、秒寄存器BCDSEC 、星期寄存器BCDDAY 进行初始化,时间值为BCD 格式。初始化完成后,将RTCCON 寄存器写为0x00,禁能RTC 接口(即禁止写RTC 操作),接下来就可以直接读取RTC 时间寄存器的值来使用了。
4、步进电机是一种将电脉转化为角位移的数据控制电机,即给它一个脉冲信号,它就按设定的方向转动一个固定的角度。用户可以通过设置脉冲的个数来控制角位移量,从而实现准确的定位操作;另外,通过控制脉冲频率来控制电机转动速度和加速度,从而实现调速的目的。当然,对于步进电机各组绕组(即内部线圈)的控制脉冲要有一定的顺序,否则电机无法正常旋转。MagicARM2410试验箱上
的步进电机为四项步进电机,电机驱动为18°。S3C2410A 的GPIO 驱动能力有限,必须通过ULCN2003达林顿集成驱动芯片驱动步进电机,在步进电机和驱动电路之间连接了电阻,防止控制紊乱造成电机的损坏。
三、主要仪器设备及耗材
1、硬件:PC 机一台,MagicARM2410教学实验开发平台一套
2、软件:Windows98/XP/2000系统,ADS 1.2集成开发环境
四、实验步骤
1、启动ADS1.2,使用ARM Executable Image for DeviceARM2410工程模板建立一个工程shiyanyi 。
2、在src 组中的main.c 中编写主程序代码。
3、选用DebugRel 生成目标,然后编译连接工程。
4、将MagicARM2410实验箱上的CZ11用串口延长线与PC 机的COM1连接。
5、PC 机上运行“超级终端”程序(在Windows 操作系统的开始-程序-附件-通讯-超级终端),新建一个连接,设置串口波特率为115200,接着呼叫连接(“超级终端”主窗口的呼叫-呼叫)。
6、选择Project-Debug ,启动AXD 进行JTAG 仿真调试。
7、全速运行程序,观察PC 机上的“超级终端”主窗口是否能正确显示,以及选择各项操作时能否在实验箱或超级终端上实现。
五、实验数据及处理结果
加载程序到SDRAM ,全速运行出现人机交互界面:
按1键,显示姓名学号。
按2键,蜂鸣器比一声。
按3键,LED 闪
按4键,LED 十六进制显示,LED 灯按十六进制显示来闪烁。
按5键,选择步进电机(bj ), 实验箱步进电机转动
按6键,选择直流电机(dj ), 直流电机转动
整体界面:
拓展功能:进入任何一个功能后,直接按Ese 键即可跳出,然后等待按键。
六、实验心得
通过本次实验,我初步掌握了GPxCON 寄存器控制LED 灯显示的原理。在相应的GPxDAT 位写1时,LED 灯亮,写0时LED 灯灭。 基本掌握了在ARM 超级终端上进行数学算法的原理和步进电机通过W1,进行A/D转换后控制电机转速和方向的原理,熟悉了S3C2410A 处理器的硬件IIC 接口的使用,掌握了CAT1025EEPROOM 的操作方法。本次实验是和同学一起合作完成的,有很多疑惑在同学和老师的帮助下也就迎刃而解了,感觉收获颇丰。
南昌大学实验报告
学生姓名: 胡文松 学 号: 6103413007 专业班级: 生物医学工程131班 实验类型:□ 验证 ■综合 □设计 □ 创新 实验日期: 实验成绩:
综合实验一 直流、步进电机综合控制系统设计
一、实验目的
1、初步熟悉实验GPIO 口的初始化设置,并熟悉实验箱各个模块的功能;
2、掌握步进机的控制原理及利用延时脉冲来改变步进电机速度;
3、掌握直流电机的控制原理及利用pwm 占空比控制来改变速度;
4、学习IIC 总线读取和写数据原理,并掌握对CAT1025 E2PROOM操作方法, 学会控制数码管的显示UART 串口函数,并初步掌握中断处理函数的写法。
二、实验基本原理
1、S3C 2410A 具有117个通用I/O口,分为A —H 等8个端口,由于每个I/O口都有第2功能,甚至第3功能,所以需要通过设置GPxCON 寄存器来选择GPx 口I/O口功能,其中x 可以为A 、B 、C 、D 、E 、F 、G 表示相应的I/O端口。当I/O口设置为GPIO 输出模式(Output 模式)时,可以通过写GPxDAT 控制相应I/O口输出高电平或低电平,GPxDAT 为1的位对应I/O输出高电平,为0的位对应输出低电平。
2、工程模板中包含有串口软件包UART.C ,用户可以调用相应的接口函数进行串口数据发送和接收,串口的波特率需要在config.h 文件中进行设置,本实验使用默认的115200波特率。对串口进行初始化时,首先要设置相应I/O口为TXD0,TRD0功能引脚,然后通过ULCON0来设置通讯波特率。设置UCON0寄存器时,要设置串口工作模式为查询模式,即UCON[3:0]应为0101b 。
3、S3C2410A 具有实时时钟(RTC )功能,能够提供时、分、秒,年、月、日的计时功能,还具有定时报警功能。RTC 单元采用独立的后备电池供电,独立式时钟源(采用32.768KHz 晶振),即使系统关闭电源,RTC 还可以正常工作。 要初始化RTC 的时间值,首先要给RTCON 寄存器写为0x01,使能RTC 接口(即允许写RTC 操作),然后对年寄存器BCDYEAR 、月寄存器BCDMON 、日寄存器BCDDATE 、时寄存器BCDHOUR 、分寄存器BCDMIN 、秒寄存器BCDSEC 、星期寄存器BCDDAY 进行初始化,时间值为BCD 格式。初始化完成后,将RTCCON 寄存器写为0x00,禁能RTC 接口(即禁止写RTC 操作),接下来就可以直接读取RTC 时间寄存器的值来使用了。
4、步进电机是一种将电脉转化为角位移的数据控制电机,即给它一个脉冲信号,它就按设定的方向转动一个固定的角度。用户可以通过设置脉冲的个数来控制角位移量,从而实现准确的定位操作;另外,通过控制脉冲频率来控制电机转动速度和加速度,从而实现调速的目的。当然,对于步进电机各组绕组(即内部线圈)的控制脉冲要有一定的顺序,否则电机无法正常旋转。MagicARM2410试验箱上
的步进电机为四项步进电机,电机驱动为18°。S3C2410A 的GPIO 驱动能力有限,必须通过ULCN2003达林顿集成驱动芯片驱动步进电机,在步进电机和驱动电路之间连接了电阻,防止控制紊乱造成电机的损坏。
三、主要仪器设备及耗材
1、硬件:PC 机一台,MagicARM2410教学实验开发平台一套
2、软件:Windows98/XP/2000系统,ADS 1.2集成开发环境
四、实验步骤
1、启动ADS1.2,使用ARM Executable Image for DeviceARM2410工程模板建立一个工程shiyanyi 。
2、在src 组中的main.c 中编写主程序代码。
3、选用DebugRel 生成目标,然后编译连接工程。
4、将MagicARM2410实验箱上的CZ11用串口延长线与PC 机的COM1连接。
5、PC 机上运行“超级终端”程序(在Windows 操作系统的开始-程序-附件-通讯-超级终端),新建一个连接,设置串口波特率为115200,接着呼叫连接(“超级终端”主窗口的呼叫-呼叫)。
6、选择Project-Debug ,启动AXD 进行JTAG 仿真调试。
7、全速运行程序,观察PC 机上的“超级终端”主窗口是否能正确显示,以及选择各项操作时能否在实验箱或超级终端上实现。
五、实验数据及处理结果
加载程序到SDRAM ,全速运行出现人机交互界面:
按1键,显示姓名学号。
按2键,蜂鸣器比一声。
按3键,LED 闪
按4键,LED 十六进制显示,LED 灯按十六进制显示来闪烁。
按5键,选择步进电机(bj ), 实验箱步进电机转动
按6键,选择直流电机(dj ), 直流电机转动
整体界面:
拓展功能:进入任何一个功能后,直接按Ese 键即可跳出,然后等待按键。
六、实验心得
通过本次实验,我初步掌握了GPxCON 寄存器控制LED 灯显示的原理。在相应的GPxDAT 位写1时,LED 灯亮,写0时LED 灯灭。 基本掌握了在ARM 超级终端上进行数学算法的原理和步进电机通过W1,进行A/D转换后控制电机转速和方向的原理,熟悉了S3C2410A 处理器的硬件IIC 接口的使用,掌握了CAT1025EEPROOM 的操作方法。本次实验是和同学一起合作完成的,有很多疑惑在同学和老师的帮助下也就迎刃而解了,感觉收获颇丰。