- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于MSP430简易示波器的设计
基于MSP430简易示波器的设计
自动化1107
王诗雨
2013.12
硬件设计
1.1 单片机
选用MSP430G2553单片机,该单片机具有低功耗的特点,内部自带8路10位AD转换器(ADC10),最高主频可达16Mhz,对于一个简易示波器来说这些特点足够我们使用。
1.2 程控放大电路
程控放大电路的作用是对大信号进行衰减,对小信号进行放大,保证输入到A/D转换器的信号幅度在要求的输入电压范围内,以达到最好的测量与观察效果。采用模拟开关CD4051,配合精密电位器实现多挡垂直分辨率。在MSP430单片机中使用寄存器模块设置通道号,通过写入通道号控制模拟开关选通不同的反馈电阻,从而实现不同的放大倍数,对信号进行不同程度的放大(衰减)。电路图如下:
1.3 简易调理电路
由于示波器观察信号大多是正负电压信号,考虑到ADC10一般使用的是单极性参考电压(也可以使用寄存器设置双极性参考电压,这样就不需要调理电路了,但最好加一级缓冲)。为了采样到信号的负电压,就需要给该信号叠加直流量,将负电压部分信号抬高至零电平以上,因此采用信号调理电路。电路图如下:
1.4 LCD显示电路和按键电路
利用LCD的SPI通信模式与MSP430单片机连接,这样可以得到不错的通信速度,并且可以尽可能的减少MSP430引脚的占用,具体电路这里就不给出了。(按照spi连接)
利用简单独立按键实现放大倍数调节,采样频率设置等功能即可。
2.软件设计
2.1 单片机初始化
对P2口初始化,打开P2口的中断;将通信方式设置为硬件spi通信模式(注意spi通信在上升沿还是在下降沿开始)。
WDTCTL=WDTPW+WDTHOLD; //关看门狗
P1OUT = 0x00; // P1 setup for LED reset output
P1DIR |= BIT0 + BIT2 + BIT3 + BIT4 + BIT5;
P1SEL = BIT1 + BIT2 + BIT4;
P1SEL2 = BIT1 + BIT2 + BIT4;
P2REN |= 0x38;
P2DIR = 0x07;
P2OUT = 0;
P2IE |= 0x38; // P1.4 interrupt enabled
P2IFG = ~0x38;
will=0;
UCA0CTL0 |= UCCKPL + UCMSB + UCMST + UCSYNC + UCCKPH ; // 3-pin, 8-bit SPI master
UCA0CTL1 |= UCSSEL_2; // SMCLK
UCA0BR0 |= 0x04; // /2
UCA0BR1 = 0; //
UCA0MCTL = 0; // No modulation
UCA0CTL1 = ~UCSWRST; // **Initialize USCI state machine**
P1OUT = ~BIT5; // Now with SPI signals initialized,
P1OUT |= BIT5; // reset slave
ADC10初始化,开启参考源和中断。
ADC10CTL0 = ADC10SHT_0 + REFON + ADC10ON + ADC10IE;
ADC10CTL1 = INCH_6;
ADC10AE0 |= 0x40;
显示初始化,对LCD的界面显示初始化。
Initial_ILI9340C();
Delay_ms(300);
LCD_TEST_SingleColor(Black);
LCD_TEST_SingleColor(Black);
LCD_TEST_PartColor(Blue);
for(wh=22; wh220 ;wh+=10)
{
LCD_draw_Line(wh,39,White);
LCD_draw_Line(wh,79,White);
LCD_draw_Line(wh,119,White);
LCD_draw_Line(wh,159
文档评论(0)