智能车制作

标题: 为什么龙丘蕊片的串口用不了呢? [打印本页]

作者: wuminglin1989    时间: 2011-3-18 12:19
标题: 为什么龙丘蕊片的串口用不了呢?
  1. #include <hidef.h>      /* common defines and macros */
  2. #include <MC9S12XS128.h>     /* derivative information */
  3. #pragma LINK_INFO DERIVATIVE "mc9s12xs128"
  4. #define LINE_MAX 100
  5. #define ROW_MAX 480
  6. //int start;
  7. int i;
  8. int row;
  9. void SetBusClock(void){
  10. CLKSEL=0X00;              // disengage PLL to system
  11. PLLCTL_PLLON=1;           // turn on PLL
  12. SYNR=0x1F;         // VCOFRQ[7:6];SYNDIV[5:0];fVCO= 2*fOSC*(SYNDIV + 1)/(REFDIV + 1);fPLL= fVCO/(2 × POSTDIV);BUS= fPLL/2
  13. REFDV=0x07;        // REFFRQ[7:6];REFDIV[5:0]
  14. _asm(nop);                // BUS CLOCK=32M
  15. _asm(nop);
  16. while(!(CRGFLG_LOCK==1)); //when pll is steady ,then use it;
  17. CLKSEL_PLLSEL =1;      //engage PLL to system;
  18. }


  19. void InitSci(void)
  20. {
  21.    SCI0CR1 =0x00;
  22.    SCI0CR2 =0x2c;    //enable Receive Full Interrupt,RX enable,Tx enable      
  23.    SCI0BDH  =0x01;
  24.    SCI0BDL  =0xA0;   //SCI0BDL=busclk/(16*SCI0BDL)
  25.                      //busclk  8MHz, 9600bps,SCI0BD=0x34
  26.                      //busclk 16MHz, 9600bps,SCI0BD=0x68
  27.                      //busclk 24MHz, 9600bps,SCI0BD=0x9C
  28.                      //busclk 32MHz, 9600bps,SCI0BD=0xD0  
  29.                      //busclk 40MHz, 9600bps,SCI0BD=0x106
  30.                      //busclk 48MHz, 9600bps,SCI0BD=0x138
  31.                      //busclk 56MHz, 9600bps,SCI0BD=0x16D
  32.                      //busclk 64MHz, 9600bps,SCI0BD=0x1A0  
  33.                      //busclk 72MHz, 9600bps,SCI0BD=0x1D5                  
  34. //PORTA=0X00;
  35. }

  36. /**************发射端程序************************/
  37. void SciTx(char text)
  38. {
  39.    while (!(SCI0SR1&0x80));  
  40.    SCI0DRH=0;
  41.    SCI0DRL=text;
  42. }


  43. void send() {
  44. for(row=0;row<11000;row++){
  45.   
  46.   for(i=0;i<1000;i++)
  47.   
  48. SciTx('d');
  49. }

  50. SciTx('\n');
  51. }


  52. void main(void) {
  53.   /* put your own code here */
  54.   
  55.    SetBusClock();
  56.    InitSci();
  57.         EnableInterrupts;
  58.         send();
  59.         for(;;)   {
  60.   }

  61. }
复制代码
这是我写的串口程序,为什么串口助手里面什么东西都不显示呢?程序我查了好久都没查出什么问题呀。然后我用舵机调试工具也试了一下,也不行,之前用清化那块蕊片是可以用舵机调试工具的,因为烧了,所以买了块龙丘的,现在用不了呀,请问各位高手,是不是龙丘的串口和清华的蕊片串口不一样呀?要怎么改才行呀?
作者: 371274316    时间: 2011-3-18 13:10
不是龙丘的呀,是手创那儿买的
作者: flymanchen    时间: 2011-3-20 11:22
确定频率没问题吗?
作者: flymanchen    时间: 2011-3-20 11:27
SCI0BDH  =0x01;

SCI0BDL  =0xA0;  改为:
SCI0BD=0xD0 ;
试试!




欢迎光临 智能车制作 (http://111.231.132.190/) Powered by Discuz! X3.2