历史上的今天
返回首页

历史上的今天

今天是:2025年03月25日(星期二)

正在发生

2021年03月25日 | 飞思卡尔单片机DZ60---SCI(中断接收)

2021-03-25 来源:eefocus

#include /* for EnableInterrupts macro */

#include "derivative.h" /* include peripheral declarations */


#define LED_D1      PTDD_PTDD0

#define LED_D1_DIR  PTDDD_PTDDD0

 

#define LED_ON      0

#define LED_OFF     1

 

unsigned char SCANF_SEND_STRINGS[] = "HELLO MCU WORLD";

unsigned char *pSendString = SCANF_SEND_STRINGS;

unsigned char ReceiveString;

 

/*************************************************************/

/*                  初始化总线时钟PEE模式                    */

/*              外部晶振频率为4MHz,总线频率16MHz            */

/*************************************************************/

void INIT_MCG(void) 

{

  MCGC2=0x36;        

  while(!MCGSC_OSCINIT);     

  MCGC1=0xb8;

  while(MCGSC_IREFST);

  while(MCGSC_CLKST!=0b10);

  MCGC2_LP = 1;

  MCGC1 = 0x90;

  MCGC3 = 0x48;     

  MCGC2_LP = 0;

  while(!MCGSC_PLLST);

  while(!MCGSC_LOCK);

  MCGC1 = 0x10;

  while(MCGSC_CLKST!=0b11);

 

 

//延时函数

void delay(void) 

{

  unsigned int i;

  unsigned int j;

   

   

  for(i = 0; i < 100; i++)

     for(j = 0; j < 4000; j++);

  

}


void main(void) {

 

  DisableInterrupts;

  SOPT1 = 0;

  INIT_MCG();

  EnableInterrupts; /* enable interrupts */

  /* include your code here */

  

  LED_D1_DIR = 1;

  LED_D1     = LED_OFF;


 //以下为设置波特率,以及初始化SCI1控制寄存器  

  SCI1BDH = 0X00;

  SCI1BDL = 0X68;//波特率设置为9600

  SCI1C1 = 0x00; //设置SCI1为正常模式,八位数据位,无奇偶校验

  SCI1C2 = 0x2C; //RE = 1(bit2)接收器打开

                 //TE = 1(bit3)发送器打开

 

  while(1) 

  {

  

  }


  for(;;) {

    __RESET_WATCHDOG(); /* feeds the dog */

  } /* loop forever */

  /* please make sure that you never leave main */

}

 

 

/*************************************************************/

/*                SCI1中断向量接收函数                       */

/*                向量编号为17,中断来源RDRF等               */

/*************************************************************/

interrupt 17 void SCI1_RECEIVE(void) 

{

    while(!SCI1S1_RDRF);// SCI1S1_RDRF = 1时,表示接收数据寄存器满,可以取出数据

    ReceiveString = SCI1D; //将接收寄存器中的数据保存至ReceiveString

   LED_D1 = ~LED_D1;

 

    

    while(!SCI1S1_TDRE);//SCI1S1_TDRE = 1时,发送数据寄存器(缓存区)空,可以发送数据

    SCI1D = ReceiveString;//将接收到的数据,放至发送数据寄存器(缓存区),发送

    

}


推荐阅读

史海拾趣

FILTRONIC公司的发展小趣事

FILTRONIC深知技术创新是企业持续发展的动力源泉。因此,公司不断加大研发投入,建立了先进的研发中心和实验室,吸引了一批高素质的研发人才。通过持续的技术研发,FILTRONIC在滤波器技术、射频技术、天线技术等领域取得了多项重要突破,推出了多款具有自主知识产权的新产品。这些新产品的推出不仅进一步巩固了FILTRONIC在市场中的领先地位,也为公司的未来发展注入了新的活力。

上海超致公司的发展小趣事

在电子产品行业,品质控制和质量保证是企业生存和发展的关键。上海超致始终将品质放在首位,建立了严格的质量管理体系,从原材料采购到生产制造、产品检测等各个环节都严格把控品质。公司还引进了先进的生产设备和检测仪器,确保产品的可靠性和稳定性。这种对品质的执着追求使得上海超致的产品在市场上获得了良好的口碑和广泛的认可。

AAT [Advanced Analog Technology, Inc.]公司的发展小趣事

作为一家有社会责任感的企业,上海超致始终关注环境保护和可持续发展。公司积极推广绿色生产技术和资源循环利用方案,减少生产过程中的能源消耗和废弃物排放。同时,上海超致还积极参与社会公益活动,为社区和环境贡献自己的力量。这种对社会责任的关注和担当使得上海超致在电子行业中树立了良好的形象。

FlexiPanel公司的发展小趣事

面对电子行业日益多样化的市场需求,FlexiPanel推出了定制化RF模块解决方案服务。公司拥有一支专业的技术团队,能够根据客户的具体需求,提供从需求分析、方案设计、样品制作到批量生产的全流程服务。这种灵活多样的服务模式不仅满足了客户对于个性化产品的需求,还帮助FlexiPanel在市场中建立了良好的口碑和品牌形象。

亿佰特(EBYTE)公司的发展小趣事

亿佰特在发展过程中,荣获了多项荣誉和奖项。公司成功入选2022年度四川省“专精特新”中小企业名单,这是对公司在细分市场专业化、企业管理精细化、产品或服务特色化、科技成果新颖化等方面的认可。同时,亿佰特还积极履行社会责任,关注环保和公益事业,展现了企业的良好形象和责任感。

以上五个故事方向涵盖了亿佰特在电子行业中的发展过程中的重要方面,希望能够帮助您了解该公司的成长历程。

Astec [Astec America, Inc]公司的发展小趣事

随着技术的不断成熟和市场的不断扩大,Astec开始积极寻求市场拓展的机会。公司不仅加大了在国内市场的宣传力度,还通过参加国际电子展会等方式,将产品推向了国际市场。同时,Astec还注重品牌形象的建立,通过提供优质的产品和服务,逐渐树立了良好的品牌形象。

问答坊 | AI 解惑

LINUX u-boot 命令大全

Printenv 打印环境变量。 Uboot> printenv baudrate=115200 ipaddr=192.168.1.1 ethaddr=12:34:56:78:9A:BC serverip=192.168.1.5 Environment size: 80/8188 bytes Setenv 配置新的变量 Uboot> setenv myboard AT91RM9200DK Uboot> printenv baudr ...…

查看全部问答>

太阳能手机充电电路(下载)

本帖最后由 jameswangsynnex 于 2015-3-3 20:01 编辑 太阳能手机充电电路 …

查看全部问答>

VGA典型示例

VGA典型例子,希望对有需要的你有所帮助…

查看全部问答>

异常处理问题

ARM的异常向量表 地址                 异常 0x0000,0000       复位 0x0000,0004       未定义指令 ...... 当发生异常时(未定义指令 ...…

查看全部问答>

LED电源恒流电路分析

我们都知道LED电源其实没什么特别,其特点就是需要恒流限压,况且长期工作在满载情况下,所以对效率的要求比较高;有些电源由于结构尺寸的限制,对高度有要求。 下面我就试着就目前中小功率的LED照明电源,谈谈次级恒流的一些常见的方法来一个总结 ...…

查看全部问答>

请各位大牛指点一下,谢谢。

本帖最后由 dontium 于 2015-1-23 13:24 编辑 系统结构是这样:AD->FIFO->(SDRAM)->DSP。这里打个括号是指FIFO和SDRAM采用PDT连接方式与DSP的EMIFA连接。AD采样后把数据输入FIFO,FIFO半满后通过PDT直接送入SDRAM,然后DSP从SDRAM取数据处理 ...…

查看全部问答>

弱问一个,什么是双通道ADC?

本帖最后由 dontium 于 2015-1-23 13:28 编辑 一直在网上看到单通道,双通道ADC。到底是什么概念? …

查看全部问答>

这个程序用439F149能产生PWM波,而用430F2618就不行了,求助!

/*******************************************************程序功能:用从P2.3和P2.4输出的PWM波形驱动LED闪烁          P2.3口输出方波的占空比为75%       &n ...…

查看全部问答>

无线通信模块(数据手册+源代码)

RF24L01模块:数据手册+源代码…

查看全部问答>