找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4073|回复: 2
打印 上一主题 下一主题
收起左侧

STC15单片机ADC温敏电阻测温源程序

[复制链接]
跳转到指定楼层
楼主
品诺电子STC15W4K-实验29-ADC温敏电阻测量温度


单片机源程序如下:
  1. /************************************************************************************
  2. *
  3. * 实验平台:品诺电子STC15W4K核心板 + 品诺电子"开拓者"扩展板
  4. * 时钟选择:内部IRC时钟22.1184M
  5. * 功能说明:该实验通过ADC功能,使用扩展板上的温敏电阻测量当前温度,温度值显示在数码管上。温敏电阻相对于DS18B20温度传感器,价格低的多。
  6. *
  7. ************************************************************************************/

  8. #include "stc15f2k60s2.h"
  9. #include "my_type.h"
  10. #include "main.h"
  11. #include "num.h"
  12. #include "adc.h"
  13. #include "ntc_temp.h"

  14. /********************************************************************
  15. 函数功能:对IAP15W4K,STC15W4K的IO口初始化为准双向IO口。                  
  16. 入口参数:无。
  17. 返    回:无。
  18. 备    注:STC15W4K系列的芯片,上电后所有与PWM相关的IO口(P0.6/P0.7
  19.                   /P1.6/P1.7/P2.1/P2.2/P2.3/P2.7/P3.7/P4.2/P4.4/P4.5)均为高
  20.                   阻态,需将这些口设置为准双向口或强推挽模式方可正常使用。
  21. ********************************************************************/
  22. void InitIO(void)
  23. {
  24.         //初始化 P0 P1 P2 P3 P4 为准双向IO口
  25.         P0M0 = 0x00;
  26.         P0M1 = 0x00;

  27.         P1M0 = 0x00;
  28.         P1M1 = 0x00;

  29.         P2M0 = 0x00;
  30.         P2M1 = 0x00;

  31.         P3M0 = 0x00;
  32.         P3M1 = 0x00;

  33.         P4M0 = 0x00;
  34.         P4M1 = 0x00;  
  35. }
  36. /**///////////////////////Pino Electronics////////////////////////**/

  37. /********************************************************************
  38. 函数功能:主函数。
  39. 入口参数:无。
  40. 返    回:无。
  41. 备    注:无。
  42. ********************************************************************/
  43. void main (void)
  44. {
  45.         u8 temp;
  46.         InitIO();
  47.         InitTimer0();
  48.         InitADC(ADC_CHANNEL_TMP);
  49.         EA=1;                                //允许所有中断

  50.         while(1){
  51.                 if(GetAdcUpdatedFlag()){
  52.                         temp=AdcDatToTemp(GetAdcData());
  53.                         SetNumDisplayDecimal(temp);
  54.                         InitADC(ADC_CHANNEL_TMP);
  55.                 }
  56.                 if(GetSecondFlag()){
  57.                         Led2Tog();
  58.                 }
  59.         }
  60. }
  61. /**///////////////////////Pino Electronics////////////////////////**/



  62. ……………………

  63. …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码

所有资料51hei提供下载:
STC15W4K-ADC温敏电阻测量温度.rar (70.83 KB, 下载次数: 139)


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:585455 发表于 2019-7-28 12:28 | 只看该作者
感謝分享
回复

使用道具 举报

板凳
ID:380304 发表于 2019-11-11 00:26 | 只看该作者
感謝分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表