单片机
_Hong_
冰冻三尺非一日之寒!
展开
-
MSP430F1232中断学习
ADC10中断:和定时器一样,ADC10也有中断请求的能力,如果不使用DCT(ADC10DCT1=0),当转换结果装载到ADC10MEM时,ADC10中断标志位即ADC10IFG置1。如果使用DCT,当DCT设定的所有转换完成之后,中断标志为置1。大概过程是这样的: //对于中断来说,当每次两个整个数据块都传递完成时,中断标志置1,此时产生中断,让CPU跳出低功耗状态,继原创 2016-01-15 23:26:23 · 1694 阅读 · 0 评论 -
通过MSP430F1232最小系统测试单片机AD10程序
测试单片机程序,包括单片机初始化设置,时钟等,主要是AD模块的设置,通过TI官网的1232例程进行程序的编写。原创 2016-01-15 21:08:08 · 3566 阅读 · 0 评论 -
ADC采样频率计算与时钟频率选择
ADC10每次采样转换的总时间是:采样时间+转换时间其中采样时间可以设置成若干个ADC10CLK,转换时间手册中给出的是13个ADC10CLK,当然还有一个时钟同步时间tsync,但是这个时间小于一个ADC10CLK,粗略计算的话个人感觉就可以忽略了。所以最终的计算公式是:(n+13)*ADC10CLK,其中n是通过软件设置的。假设ADC10CLK选择ACLK作为时钟源,ACLK的原创 2016-01-16 15:48:07 · 46367 阅读 · 2 评论 -
C语言中各种数据类型的大小
C语言 1.几条规则 (1)char类型一般是8bit,但ANSI C里没有硬性规定其长度,某些嵌入式编译器可能是16bit (2)short和long类型的长度不相同 (3)int类型通常同具体机器的物理字长相同 (4)short通常是16bits, int通常是16bits or 32bits每种编译器可以根据硬件的不同自由确定, 但是short和int必须最少是转载 2016-01-19 01:20:24 · 10596 阅读 · 0 评论 -
MSP430F1232针对ADC10(使用DTC+SA)的内存中采样结果读取
定义一个指针,让它指向内存的某个地址,然后通过指针就可以访问。如果需要访问地址为0x210的内存单元(MSP430的ram起始地址是0x200),则可以这样:char a;char *p;p=0x210;*p=90;//在地址为0x210的内存单元存入一个数字90a= *p;//将地址为0x210的内存单元中的数字读出赋值给a其实不光是430单片机,其他各种单片也是原创 2016-01-19 01:44:10 · 2917 阅读 · 0 评论 -
蓝牙连接MSP430F1232单片机之后,不传输数据
通过安卓手机端的软件来接受蓝牙数据,蓝牙连接单片机,通过单片机的串口将数据给蓝牙,然后蓝牙再发送给手机,现在手机端通过Eclipse调试,发现应该是卡在了输入流的read上,因为read方法是阻塞式的,如果没有发送过来数据,就会阻塞在这里。通过测试发现,蓝牙本身没有问题,因为蓝牙接到了原来的板子上,能成功发送数据;安卓软件本身没有问题,因为通过以前的板子也测试了,能够正常接收数据;问题原创 2016-01-22 01:12:27 · 1916 阅读 · 0 评论 -
关于ADC的采样率和UART的波特率
本实验的要求是,采集传感器的模拟信号,经过ADC10进行模数转换得到数字信号,之后通过串口发送给蓝牙模块,蓝牙模块可以将数据发送给手机。ADC10的采样率,整个模数转换过程包括采样和转换两步,采样和转换的时间都是根据ADC10参考时钟源的速度决定的。上述的整个要求的执行过程是一种顺序执行的过程:先使能ADC10,对模拟信号进行采样,再进行转换,转换完成之后原创 2016-01-22 01:15:25 · 4385 阅读 · 1 评论