测控综合设计PID控制.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
测控综合课程设计 ——PID温度控制器的设计 目录 一. 实验目的: 2 二. 实验内容: 2 1. 静态显示模块 2 ① 器件 2 ② 功能 2 ③ 静态显示电路图 2 ④ 静态显示参考程序 2 ⑤ 仿真结果 3 2. 动态显示模块 3 ① 器件 3 ② 功能 3 ③ 动态显示电路图 3 ④ 动态显示参考程序 4 ⑤ 仿真结果 5 3. 键盘显示模块 5 ① 器件 5 ② 功能 5 ③ 键盘扫描电路图 6 ④ 键盘扫描参考程序 6 ⑤ 仿真结果 9 三.参考资料 9 实验目的: 电炉内的热电阻温度传感器测出的温度信号经运算放大器放大和模/数转换后,由8051读出电阻炉温,控制程序根据当前炉温和目标温度的偏差,按照一定的控制方法控制开关的开与断,提供适当 的加热功率,以使炉温尽快趋近目标温度。最后通过LED将结果显示出来。 实验内容: 静态显示模块 器件 名称 型号 标号 数量 单片机 AT80C51 U1 1 译码器 74LS138 U5 1 或非门 74LS02 U6(ABC) 3 译码器 74LS373 U2,U3,U4 3 电阻 R1,R2,R3 3 LED数码管 3 功能 利用LED静态编程方式来是LED的静态显示。通过编写程序在LED上显示1,2,3 。 静态显示电路图 静态显示参考程序 #include absacc.h Unsigned char code LED_CODES[]={0xc0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E,0xFF,0x0C,0x89,0x7F,0xBF}; void main() { XBYTE[0x0000]=LED_CODES[1]; XBYTE[0x0100]=LED_CODES[2]; XBYTE[0x0200]=LED_CODES[3]; while(1);} ⑤ 仿真结果 (当按下运行键时显示1,2,3) 动态显示 器件 名称 型号 标号 数量 单片机 80C31 U1 1 译码器 74LS373 U3 1 译码器 74LS138 U2 1 RAM 2764 U4 1 ROM 6264 U5 1 定时器 8255 U0 1 编码器 LIN2003 U7 1 译码器 74LS244 U8(AB) 2 LED显示器 7SEG-MPX6-CC 1 晶体振荡器 CRYSTAL X1 1 电容 CAP C1,C2,C4 3 电阻 RES R1——R17 17 按钮 1 功能 采用动态扫描方式编程实现LED的动态显示,这个模块是通过编程在LED上显示1,2,3,4,5.由于LED段引脚是接在一起的,而COM引脚是独立的,程序通过控制各LEDCOM端的点评来决定点亮某一位LED,刷新的速度达到每秒30帧以上,虽然各位是分时点亮的,单由于人的视觉暂留效应看起来显示还是连续的。 动态显示电路图 动态显示参考程序 #define base 0x0000 #define port_a (base) #define port_b (base + 1) #define port_c (base+ 2) #define port_control (base+ 3) #define leds 6 #define ca 0 #define cc 1 /*函数声明*/ void turn_on(char led,char chnumber,char mode); void ledsoff(); void onebyone(char datas[]); extern void init8255(); unsigned char code select[]; unsigned char code led_codes[]; #includereg51.h #includeabsacc.h #includedisplay.h /*led 灯选通信号*/ /*高电平位选*/ unsigned char code select[]= {0x01,0x02,0x04,0x08,0x10,0x20}; unsigned char code led_codes[]= {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0xff,0x0c,0x89,0x7f,0xbf}; /*初始化8255A*/ /*各led位全灭*/ void init8255() {unsigned char i,j; for(j=0;j10;j

文档评论(0)

smdh + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档