基于stc89c52的传感器控制系统设计内容摘要:

址或间接 址 ,(data/idata)。 (2)高 128字节的内部 RAM(地址 :80HFFH) ,只能间接寻址 (普通 89C5有 ),(idata)。 (3)特殊功能寄存器 SFR(地址 :80HFFH) , 只能直接寻址 ,(data)。 特殊功能寄存器 SFR 和高 128 字节的内部 RAM 是通过寻址方式来区分的 ,传统的 8051 系 列单片机只有 128256 字节 RAM 供用户使用,在此情况下 STC 公司响应广大用户的呼声,在一些单片机内部增加了 RAM。 STC89C58RD+ 系列单片机扩展了1024 个字节 RAM, STC89C52RC 系列单片机扩展了 256个字节 RAM。 RC/RD+系列 8051单片机扩展 RAM 管理及禁止 ALE输出特殊功能寄存器 只写Symbol 符号 Function功能 EXTRAM Internal/External RAM access内部 /外部 RAM存取 ,在 00H到 3FFH单元 (1024字节 ),使用 MOVX @DPTR指令访问 ,超过 400H的地址空间总是访问外部数据存储器(含 400H单元), MOVX @Ri只能访问 00H到 FFH单元。 RC系列单片机在 00H到 FFH单元 (256 字节 ),使用 MOVX @DPT指令访问 ,超 100H黑龙江工程学院本科生毕业设计 8 的地址空间总是访问外部数据存储器(含 100H单元), MOVX @Ri只能访问 00H到 FFH单元。 ALE脚输出固定的 1/6晶振频率信号在 12时钟模式时 ,在 6时钟模式时输出固定的1/3晶振频率信号。 有些用户系统因为外部扩展了 I/O或者用片选去选多个 RAM区 ,有时与此内部扩 的EXTRAM逻辑地址上有冲突, 将此位设置为 “1”, 禁止访问此内部扩展的 EXTRAM就可以了。 其实不用设置 AUXR寄存器即可直接用 MOVX @DPTR 指令访问此内部扩展的EXTRAM,超过此 RAM空间 ,将访问片外单元 .如果系统外扩了 SRAM,而实际使用的空间小 1024/256字节 ,则可直接将此 SRAM 省去 ,比如省去STC62WV256,IS62C256,UT6264 等。 另外尽量用 MOVX A, @Ri/ MOVX @Ri, A 指令访问此内部扩展的 EXTRAM,这样只能访问 256 字节的扩展 EXTRAM,但可与很多单片机兼容。 如 STC89LE516AD/X2 系列 MOVX A, @Ri / MOVX @Ri, A 指令只能固定访问内部扩展的 EXTRAM, MOVX A, @DPTR / MOVX @DPTR, A 指令固定访问外部RAM。 应用示例供参考( C 语言) : /* 访问内部扩展的 EXTRAM */ /* RD+ 系列为 (00H 3FFH, 共 1024 字节扩展的 EXTRAM) */ /* RC 系列为 (00H FFH, 共 256 字节扩展的 EXTRAM) */ /* 新增特殊功能寄存器 声明 (C 语言方式 ) */ sfr AUXR = 0x8e /* 如果不需设置 AUXR 就不用声明 AUXR */ AUXR = 0x00。 /* 0000,0000 EXTRAM 位清 0, 其实上电复位时此位就为 0 */ unsigned char xdata sum, loop_counter, test_array[128]。 /* 写芯片内部扩展的 EXTRAM */ sum = 0。 loop_counter = 128。 test_array[0] = 5。 sum = test_array[0]。 RD+系列 : 如果 address 400H, 则在 EXTRAM 位为 ”0”时,访问物理上在内部,逻辑 上在外部的此 EXTRAM。 如果 address=400H,则总是访问物理上外部扩展 RAM或 I/O空 间 ( 400HFFFFH)。 RC 系列 : 黑龙江工程学院本科生毕业设计 9 如果 address 100H,则在 EXTRAM 位为 “0”时, 访问物理上在内部,逻辑上在外部。 如果 address=100H,总是访问物理上外部扩展的 RAM或 I/O空 ( 100HFFFFH)。 此外复位电路 5V单片机,应在 以下时让其复位, 3V 单片机,应在 以下时让其复位。 在此电压以下,此时再用 ISP/IAP 功能,编程 / 擦除 Flash,不能保证能达到要求。 复位电路可选 MAX8 STC8 STC634 STC634 813L、 706P等。 程序在系统 ISP程序区时可以对用户应用程序区 /数据 Flash区 (EEPROM)进行字节读 、 字节编程 、 扇区擦除;程序在用户应用程序区时,仅可以对数据 Flash 区 (EEPROM)进行字节读 、 字节编程 、 扇区擦除。 已经固化有 ISP引导码 , 并设置为上电复位进入 ISP的STC8 9C51RC/RD+ 系列单片机出厂时就已完全加密。 程序擦除为扇区擦除,没有字节擦除,只有扇区擦除, 512字节 /扇区 ,每个扇区建议只用。 1字节 /2字节 /3字节 /4字节 128字节 /256字节 /512字节。 如果要对某个扇区进行擦除,而其中有些字节的内容需要保护,则需将其先读到单片机 ; 内部的 RAM中保存,再将该扇区擦除,然后再将保存的数据写回该扇区,所以每个扇区中用的字节数越少越好,操作起来越灵活越快 (每个扇区只用 1128 字节以内较方便 )。 单片机最小系统见图。 p1 .01p1 .12p1 .23p1 .34p1 .45p1 .56p1 .67p1 .78R S T9p3 .0 / R X D10P 3. 1 / T X D11P 3. 2 / I N T O12P 3. 3 / I N T 113P 3. 4 / T O14P 3. 5 / T 115P 3. 6 / W R16P 3. 7 / R D17X T A L 218X T A L 119G N D20P 2. 0 / A 621P 2. 1 / A 922P 2. 2 / A 1023P 2. 3 / A 1124P 2. 4 / A 1225P 2. 5 / A 1326P 2. 6 / A 1427P 2. 7 / A 1528P S E N29A L E30EA31P 0. 7 / A D 732P 0. 6 / A D 633P 0. 5 / A D 534P 0. 4 / A D 435P 0. 3 / A D 336P 0. 2 / A D 237P 0. 1 / A D 138P 0. 0 / A D 039V C C40S T C 89 C 5 2+5X1X2R S TR110 k+C110 uFS W P B+5R S T11 .0 59 2MC230 pFC330 pFX1X2123456789R P 1 KD0D1D2D3D4D5D6D7 图 STC89C52单片机最小系统图 STC89系列单片机大部分具有在系统可编程( ISP)特性, ISP 的好处是:省去购买通用编程器,单片机在用户系统上即可下载 /烧录用户程序,而无须将单片机从已生产好的产品上拆下,再用通用编程器将程序代码烧录进单片机内部。 有些程序尚未定型的产品可以一边生产,一边完善,加快了产品进入市场的速度,减小了新产品由于黑龙江工程学院本科生毕业设计 10 软件缺陷带来的风险。 由于可以将程序直接下载进单片机看运行结果故也可以不用仿真器。 大部分 STC89 系列单片机在销售给用户之前已在单片机内部固化有 ISP 系统引导程序,配合 PC端的控制程序即可将用户的程序代码下载进 单片机内部,故无须编程器 (速度比通用编程器快 )。 不要用通用编程器编程,否则有可能将单片机内部已固化的 ISP 系统引导程序擦除,造成无法使用 STC提供的 ISP软件下载用户的程序代码。 STC89C51RC/RD+系列单片机出厂时一般都固化有 ISP引导码程序,如只烧录普通的用户程序,则只需将 ,通过STCISP下载软件打开用户程序下载就可以了。 如果不用 STC的 ISP程序而要编写自己的 ISP程序,则需要 STC89C51RC/RD+系列单片机专用编程工具,才可将用户的 ISP程序烧录进单片机内部 ,软件使用 STC MCU Programmer编程工具。 方式一:用户主应用程序和 ISP程序一起烧录,上电复位后程序从 ISP区开始运行也可直接调入 ISP程序至 ISP区,选择从 ISP程序区启动,再烧录。 用户主应用程序由用户自己编的 ISP程序下载。 还可以把 ISP区当成用户程序区,把余下的空间当成 DataFlash数据空间, 如 STC89C516RD+,4K ISP区当用户程序使用,余下 59K当 EEPROM 用。 方式二:用户主应用程序和 ISP程 序一起烧录,上电复位后程序从用户主应用程序区开始运行 (但现版本单片机 ISP/IAP就会无效,只能当成无 ISP/IAP的单片机使用,故此法对于写自己的 ISP 程序来说无效 )已加过密的单片机,或已设置 ISP空 间 1k/2k/4k,上电复位从 ISP空间启动的单片机,重新烧录程序时,要先将整个芯片擦除,再停电 (单片机电放光后 ),再上电,再重烧程序,才会写对。 擦除整个芯片后,重新允许读出芯片内容的状态,是停电再上电后才能生效。 串口通信图见图。 C110 u FC A P 1+1C A P +2C A P 13C A P 2+4C A P 25C A P 6R T O U T 27R R I N 28R O U T 29T I N 210T I N 111R O U T 112R R I N 113R T O U T 114GND15V C C16M A X 23 2C210 u FC310 u FC410 u F162738495D B 9T1T2 图 串口通信原理图 2. AD转换芯片 PCF8591 PCF8591是一款单电源、低功耗 8位 COMS型 A/D、 D/A转换芯片,它具有 4路模拟黑龙江工程学院本科生毕业设计 11 量输入通道、一路模拟量输出通道和 1个 I2C总线接口。 该器件 I2C从地址的低三位由芯片的 A0、 A1和 A2三个地址引脚决定,所以在不增加任何硬件的情况下同一条 I2C总线最多可以连接 8个同类型的器件。 该器件具有多路模拟量输入、片上跟踪保持、 8位 A/D转换和 8位 D/A转换等功能。 A/D与 D/A的最大转换速率由 I2C总线的最大传输速率决定。 PCF8591具有以下特点: ( 1) 正常工作电源电压范围为 ~ 6V; ( 2) 通过 I2C总线完成数据的输入 /输出; ( 3) 器件地址由 3个地址引脚决定; ( 4) 采样频率由 I2C总线传输速率决定; ( 5) 4路模拟量输入可编程为单端输入或差分输入; ( 6) 可配置转换通道号自动增加功能; ( 7) 模拟电压范围为 VSS~ VDD; ( 8) 片上跟踪保持功能; ( 9)单电源供电; ( 10) 8位逐次逼近 A/D转换; ( 11) 带有一路模拟量输出的乘法 D/A转换。 A/D转换芯片 PCF8591功能框图见图。 图 PCF8591功能框图 器 AD590 黑龙江工程学院本科生毕业设计 12 AD590是 AD公司利用 PN结正向电流与温度的关系制成的电流输出型两端温度传感器。 实际上,中国也开发出了同类型的产品 SG590。 这种器件在被测温度一定时,相当于一个恒流源。 该器件具有良好的线性和互换性,测量精度高,并具有消除电源波动的特性。 即使电源在 5~ 15V之间变化,其电流只是在 1 181。 A以下作微小变化。 AD590是电流型温度传感器,根据特性分挡, AD590的后缀以 I, J, K, L, M表示。 AD590L, AD590M一般用于精密温度测量电路,它采用金属壳 3脚封装,其中 1脚为电源 正端 V+ ; 2脚为电流输出端 Io; 3脚为管壳,一般不用。 AD590的主特性参数如下: 工作电压: 430V; 工作温度: 55~ +150176。 C; 保存温度: 65~ +175176。 C; 正向电压: +44V; 反向电压: 20V; 焊接温度( 10秒): 300176。 C; 灵敏度: 1181。 A/K。 AD590的工作原理: 在被测温度一定时, AD590相当于一个恒流源,把它和 5~ 30V 的直流电源相连,并在输出端串接一个。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。