芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

飞芯科技-芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

芯片破解ESK32-360开发板的A/D转换

芯片破解 A/D采集
在例程中提供A/D采集功能,它是通过采集外接的电位器来模拟电位变化,进而来获得数据的变化。此外,它通过串口通信来输出采集结果。
                              


芯片破解为了改善观察效果,特添加了延时函数,修改后程序内容为:
  1. void mdelay(unsigned int z)
  2. {
  3.          unsigned int x,y;
  4.          for(x=z;x>0;x--)
  5.                    for(y=100;y>0;y--);
  6. }
复制代码

  1. int main(void)
  2. {
  3.   RETARGET_Configuration();
  4.   ADC_Configuration();
  5.   ADC_Cmd(HT_ADC0, ENABLE);
  6.   ADC_SoftwareStartConvCmd(HT_ADC0, ENABLE);

  7.   while (1)
  8.   {
  9.     if (gADC_SingleEndOfConversion)
  10.     {
  11.       printf("\rPotentiometer level is %04d \r\n", (int)gPotentiometerLevel);  //115200
  12.     }
  13.     mdelay(100);
  14.   }
  15. }
复制代码


前面为数据的显示,已经增添了数值显示函数,此时就可以排上用场了,实现图4显示效果的主程序如下:
  1. int main(void)
  2. {
  3.   RETARGET_Configuration();
  4.   ADC_Configuration();
  5.   ADC_Cmd(HT_ADC0, ENABLE);
  6.   ADC_SoftwareStartConvCmd(HT_ADC0, ENABLE);

  7.   LCD_Init();
  8.   LCD_Config();
  9.   LCD_Clear(0x2c5c);
  10.   LCD_BackColorSet(0x2c5c)
  11.   LCD_TextColorSet(Yellow);
  12.   LCD_StringLineDisplay(Line9, "     ADC=");
  13.   while (1)
  14.   {
  15.     if (gADC_SingleEndOfConversion)
  16.     {
  17.        LCD_ShowNum(Line9,180,adc,4);
  18.     }
  19.     mdelay(100);
  20.   }
  21. }
复制代码


为了能更直观地观察数据的变化趋势,绘制数据的波形曲线是一种有效的方法。
在利用前面完成的画线函数和区域填充函数的检测上,实现图5所示效果的主程序如下:
  1. int main(void)
  2. {
  3.   int adc,p,q,t,l,k;

  4.   RETARGET_Configuration();
  5.   ADC_Configuration();
  6.   ADC_Cmd(HT_ADC0, ENABLE);
  7.   ADC_SoftwareStartConvCmd(HT_ADC0, ENABLE);

  8.   LCD_Init();
  9.   LCD_Config();
  10.   LCD_Clear(0x2c5c);
  11.   LCD_BackColorSet(0x2c5c);
  12.   LCD_TextColorSet(Yellow);
  13.   LCD_RectDraw(10, 10, 200, 300);
  14.   LCD_DrawLine(105,12 , 105,308 ,Red);
  15.   LCD_DrawLine(10,25 , 210,25 ,Red);
  16.   LCD_StringLineDisplay(Line9, "  n=     adc=");
  17.   mdelay(50000);

  18.   for(t=0;t<60;t++)
  19.   {
  20.          l=t*5+10;
  21.          LCD_DrawLine(210,l,214,l,Yellow);
  22.   }
  23.         
  24.   for(t=0;t<10;t++)
  25.   {
  26.          l=t*21;   
  27.          LCD_DrawLine(210-l,6,210-l,10,Yellow);
  28.   }
  29.   t=10;
  30.   l=15;
  31.   q=210;
  32.   p=210;
  33.   k=21;
  34.   while (1)
  35.   {
  36.     mdelay(50000);
  37.     if(gADC_SingleEndOfConversion)
  38.     {
  39.                    adc=(int)gPotentiometerLevel;
  40.                    LCD_ShowNum(Line9,220,adc,4);
  41.                    p=adc/21;
  42.                    l=t+5;
  43.                    LCD_ShowNum(Line9,60,t/5-1,3);
  44.                    LCD_DrawLine(q,t,p,l,Yellow);
  45.                    t=l;
  46.                    q=p;
  47.       
  48.                    if(t>=305)
  49.                    {
  50.                       LCD_fill(11,11,199,297,0x2c5c);
  51.                       LCD_DrawLine(105,12 , 105,308 ,Red);
  52.                       LCD_DrawLine(10,25 , 210,25 ,Red);
  53.                        t=10;
  54.                       l=15;
  55.                       q=210;
  56.                    }
  57.     }
  58.   }



联系方式

地址:石家庄市新华区民族路77号华强广场D座2009
电话:0311-88816616/87087811
手机:13315190088
传真:0311-67901001
联系人:张工
网址:www.feixindz.com
邮箱:feixindz@163.com
微信:xinpianjiemi
QQ:527263666/568069805

在线客服
热线电话

企业微信