找回密码
 立即注册
查看: 332|回复: 0

基于STC32G12K128实验箱V9.62_实验之ADC_16键输入

[复制链接]
  • 打卡等级:以坛为家II
  • 打卡总天数:499
  • 最近打卡:2025-05-07 08:08:50

30

主题

347

回帖

3500

积分

荣誉版主

积分
3500
发表于 2024-5-25 20:13:42 | 显示全部楼层 |阅读模式
基于STC32G12K128实验箱V9.62_实验之ADC_16键输入


    本实验在《基于STC32G12K128实验箱V9.62_实验之数码管显示字符串》实验基础上,参照官方Demo实验16,增加ADC_16键输入实验。
    几点说明和体会。
    1,实验箱采用一个ADC模拟输入端口,实现16键输入,有新意,也有实用意义,是必须学习的。
    2,学习了STC32G的ADC转换编程, 加上了自己的简单按键判别的算法,返回不同的键值。
    3,实验程序开始运行,
         显示 “P-STC32G
         按任意键……
         显示 “Ad000-00
         当按下实验箱16键其中之一键时:
         数码管左边显示ADC转换结果数值(16进制显示),以便观察和体验ADC转换的稳定性;
         数码管右边显示键值数据(16进制显示),以便观察和体验不同的键值。

  主程序

//********************************************************************************
// 名称: 实验8位数码管动态扫描显示 + ADC_16KEY 按键测试
// 基于: STC32G12K128 V9.62 实验箱  (P10--ADC通道0)
// 实验: .../STC-USB-Link1D仿真器调试/GPIO基本输出控制/定时器x中断/ADC12位转换...
// 编程: 浦晓明(浦江一水) 2023-12-10
//********************************************************************************
#include "STC32G_SYS.H"
#include "LED8D.H"
#include "ADCK.H"

/*************  全局变量说明 **************/
char S[16];     //显示字符串缓存
u8  Kv;
extern u16 Kad;
//========================================================================
// 函数: void  delay_ms(unsigned int ms)
// 描述: 毫秒级延时函数。
// 参数: ms,要延时的ms数,自动适应主时钟.
//=====================================================================
void  delay_ms(unsigned int ms)
{ unsigned int i;
   do
   { i = MAIN_Fosc / 6000;
      while(--i);
   }  while(--ms);
}
/**** 主函数入口 ************************/
void main(void)
{
  SYS_Init();                 //系统初始化
  LED8D_Init();             //8数码管初始化
  ADCK_Init();              //ADC键初始化
  LED8D_Str(0,"P-StC32G"); //显示名称字串   
  GETCH();                   //按任意键继续...
  //主循环...
  while(1)
  { Kv=0;                      //键值复0  
    Kv=RDKEY();            //读ADC键
    sprintf(S,"AD%03X-%02X",Kad,Kv);    //显示ADC值和键值(16进制)
    LED8D_Str(0,S);        //送显示段码缓存   
    delay_ms(50);
  }
}


其余源代码见工程文件包
基于STC32G12K128实验箱V9.62_实验之ADC_16键输入.rar (48.14 KB, 下载次数: 40)

回复

使用道具 举报 送花

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

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-8 00:51 , Processed in 0.106195 second(s), 48 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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