晒晒我的C8051F920开发板,请大家拍砖提建议

2020-02-05 09:07发布

首先,如果阿莫觉得我这个帖子的位置不对请帮我转移一下,谢谢
为了做SI4432的实验我做了C8051F920开发板并且预留了4432模块的接口,使用CP2102将串口转为USB方便开发使用
先上个图:

C8051F920开发板 (原文件名:调整大小 C8051F920_4.JPG)
上面放置了两个容性触摸按键,利用920内部支持的容性比较器,本来是想要做可以用USB供电的,后来考虑使用笔记本可能会烧毁南桥。就没做,供电方面
既可以使用EC6仿真器供电也可以使用5~9V直流电源供电,在外接适配器接口处我放置一颗MBR0520L二极管,下版可能会在USB处加入一颗ESD保护器件。所有的IO接口都引出,板子的布局始终不太满意,希望大家能给点建议。
原理图
原理图ourdev_624144IHWZ7P.pdf(文件大小:323K) (原文件名:C8051F930B.pdf)
板子的性能测试下来还是没有什么问题的,预留了32768HZ和外接晶振,电源部分使用一颗AMS1117-3.3的,之前用LM1117-3.3发现在轻载条件下纹波是差不多的。出于成本考虑就用AMS1117-3.3了。
小弟做C8051F系列的单片机有3年的时间了,希望大家不吝指教,虚心学习一下
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
17条回答
aibel
1楼-- · 2020-02-07 06:34
回复【12楼】babysnail
-----------------------------------------------------------------------

TouchSense是在TOPLAYER,不同于F8XX系列,按键是在TOP,到MCU的线在BUTTOM。
而且就按键的样式来说,和CS0 MODE也截然不同。C8051F920是通过配置IO为
模拟然后通过内部的比较器来实现触摸按键的,而且不提供Auto Scan模式
xiaoguiyaofan
2楼-- · 2020-02-07 12:16
学习了
saint
3楼-- · 2020-02-07 13:10
 精彩回答 2  元偷偷看……
szy494468597
4楼-- · 2020-02-07 14:34
本帖最后由 szy494468597 于 2012-6-11 11:38 编辑

楼主,有没有 C8051F920 的AD采集程序?       AD采集的数值,和万用表量出来的差距很大,而且数值基本上上不会变化

我用的是 Burst 模式采集(具备自动平均值的功能),采样精度是12位,定时器2 的下降沿 被配置为 burst AD 转化的条件



//-----------------------------------------------------------------------------
// ADC0_Init
//-----------------------------------------------------------------------------
// Configures ADC0 to make single-ended analog measurements on pin P1.6
// AD采用 Burst 模式采集,具备自动平均值的功能,采样精度是12位
// 定时器2 的下降沿 被配置为 burst AD 转化的条件.

//-----------------------------------------------------------------------------
void ADC0_Init (void)
{
        //ADC0MX = 0x0E;        // Select P1.6=Temp as the ADC input pin    ****** AD 只能选择一个引脚?***
        ADC0MX = 0x0F;        // Select P1.7=Temp as the ADC input pin

    ADC0CN = 0x42;        // ADC0 无效, 开启 Burst 模式,          ********* ?ADC0无效? ******
                             // 在 TMR2 下降沿的时候开启

        ADC0AC = 0x13;                // 010:右对齐。右移2位。
                                // 011:执行和累加16次转换。                                         
       
        REF0CN = 0x18;                // REF0CN 选择地基准 和 电压基准
                                  // REFSL:11  电压基准选为内部1.65V高速电压基准

        ADC0CF = ((SYSCLK/8300000))<<3;     //*********Set SAR clock to 8.3MHz********

        ADC0CF |= 0x00;                // Select Gain of 0.5,这样值可以翻倍,因为参考电压是1.65v
                                          
        EIE1 |= 0x08;                // Enable ADC0 conversion complete int.
}



//-----------------------------------------------------------------------------
// ADC0_ISR
//-----------------------------------------------------------------------------
// This ISR averages 2048 samples then prints the result to the terminal.  The
// ISR is called after each ADC conversion which is triggered by Timer2.
//-----------------------------------------------------------------------------
INTERRUPT(ADC_ISR, INTERRUPT_ADC0_EOC)
{
        uint i;       

        unsigned long result;
        unsigned long mV;                // measured voltage in mV
        //static unsigned char sample_count = 0;   

        AD0INT = 0;                // clear ADC0 conv. complete flag
   
        result = ADC0;        // copy ADC0 into result

   // The 12-bit ADC value represents the voltage applied
   // to P1.4 according to the following equation:
   //
   //                           Vref (mV)
   //   measurement (mV) =   --------------- * result (bits)
   //                       ((2^10)-1)*2^2 (bits)

        mV =  result * 3300 / 4092;                        // 0xC86 (3206) --> 1.56V

                  for(i = 0;i <501;i++)                        // 查表,i 为温度值
                {       
                        if(mV >= VT_Table)
                        {
                                temperature = i;
                                break;
                        }
                }
                LED = ~LED;

}


万用表测出来 1.59V的,但程序仿真 结果 mV = 0XC67   即 3207  ;    当温度值变化时,万用表测是有变化的,但AD值基本不变  很奇怪

大家帮忙看一下程序有没有问题吧 ,谢谢

QQ截图20120611113313.jpg (279.38 KB, 下载次数: 0)

下载附件

C8051F920_AD 采集

2012-6-11 11:34 上传


XIE2099
5楼-- · 2020-02-07 17:31
晶振引脚最好参照规格书,等长

一周热门 更多>