搜索
bottom↓
回复: 4

第二版示波器升级后直流电压不准

[复制链接]

出0入0汤圆

发表于 2012-9-27 09:15:32 | 显示全部楼层 |阅读模式
程序没有注释,基础太差求指导

阿莫论坛20周年了!感谢大家的支持与爱护!!

曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……

出0入0汤圆

发表于 2012-9-27 10:18:30 | 显示全部楼层
我升级这个版本,只调整电平参数,不用调整增益的,要不调整一下参数
unsigned int   pos_const_ch1[10]={5575,5620,5635,5640,5580,5610,5620,5640,5660};
unsigned int   pos_const_ch2[10]={5395,5425,5430,5450,5390,5410,5420,5460,5480};
unsigned int   att_data_tab_ch1[10]={7095,6350,5385,4610,3810,6320,5580,4815,3780};
unsigned int   att_data_tab_ch2[10]={7080,6320,5345,4570,3745,6310,5560,4790,3715};
来试试

出0入0汤圆

 楼主| 发表于 2012-9-27 10:29:56 | 显示全部楼层
ccmj4708 发表于 2012-9-27 10:18
我升级这个版本,只调整电平参数,不用调整增益的,要不调整一下参数
unsigned int   pos_const_ch1[10]={5 ...

大哥能不能解释下那个数组中的数字含义呢

出0入0汤圆

发表于 2012-9-27 12:47:29 | 显示全部楼层
cafppla1 发表于 2012-9-27 10:29
大哥能不能解释下那个数组中的数字含义呢

unsigned int   pos_const_ch1[10]={5575,5620,5635,5640,5580,5610,5620,5640,5660};
unsigned int   pos_const_ch2[10]={5395,5425,5430,5450,5390,5410,5420,5460,5480};
这两句数组定义的对应的程序如下:  只要修改数组中的数据就可以了。
魏坤老师说过,只改电平参数就可以了


void SET_LEVEL_CH1(unsigned char flag)
        {
          //signed char data;
          signed int offset_data;
         
          while(IORD_ALTERA_AVALON_PIO_DATA(KEY_PORT_BASE)!=NO_KEY)
              {
                IOWR_ALTERA_AVALON_TIMER_CONTROL(TIMER_BASE,0x0b);
                if(flag)
                    {
                      if(level_data_ch1<218)level_data_ch1++;
                    }
                else
                    {
                      if(level_data_ch1>34)level_data_ch1--;
                    }
                offset_data=(pos_const_ch1[att_flag_ch1]-(127-level_data_ch1)*level_var_data_ch1);
                IOWR_ALTERA_AVALON_PIO_DATA(PWM_POS_CH1_BASE, offset_data);
                DISP_TRIG_LEVEL();
                delay_ms(150);
              }
          disp_delay_flag=2;
          IOWR_ALTERA_AVALON_TIMER_CONTROL(TIMER_BASE,0x07);
        }
        
   void SET_LEVEL_CH2(unsigned char flag)
        {
          //signed char data;
          signed int offset_data;
         
          while(IORD_ALTERA_AVALON_PIO_DATA(KEY_PORT_BASE)!=NO_KEY)
              {
                IOWR_ALTERA_AVALON_TIMER_CONTROL(TIMER_BASE,0x0b);      
                if(flag)
                    {
                      if(level_data_ch2<218)level_data_ch2++;
                    }
                else
                    {
                      if(level_data_ch2>34)level_data_ch2--;
                    }
                offset_data=(pos_const_ch2[att_flag_ch2]-(127-level_data_ch2)*level_var_data_ch2);
                IOWR_ALTERA_AVALON_PIO_DATA(PWM_POS_CH2_BASE, offset_data);
                DISP_TRIG_LEVEL();
                delay_ms(150);
              }
          disp_delay_flag=2;
          IOWR_ALTERA_AVALON_TIMER_CONTROL(TIMER_BASE,0x07);
        }
        

出0入0汤圆

 楼主| 发表于 2012-9-27 13:11:15 | 显示全部楼层
ccmj4708 发表于 2012-9-27 12:47
unsigned int   pos_const_ch1[10]={5575,5620,5635,5640,5580,5610,5620,5640,5660};
unsigned int   po ...

明白了,直流档位不能直接读出数据,要是能改进就好了
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-6-1 22:24

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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