Matlab论坛
登录
直播中
李仁志
12年用户
32经验值
擅长:模拟技术
私信
关注
[经验]
matlab实现串口通信(与xs128)程序测试!
测试
matlab
xs128程序示例!
#include
/* common defines and macros */
#include "deriva
ti
ve.h" /* derivative-specific definitions */
#define LEDCPU PORTK_PK4
#define LEDCPU_dir DDRK_DDRK4
#define LED_ON 0
#define LED_OFF 1
#define BUS_CLOCK 32000000 //总线频率
#define OSC_CLOCK 16000000 //晶振频率
#define BAUD 9600 //串口波特率
unsigned char putstring[]="123";
/*************************************************************/
/* 初始化锁相环 */
/*************************************************************/
void INIT_PLL(void)
{
CLKSEL &= 0x7f; //set OSCCLK as sysclk
PLLCTL &= 0x8F; //Disable PLL circuit
CRGINT &= 0xDF;
#if(BUS_CLOCK == 40000000)
SYNR = 0x44;
#elif(BUS_CLOCK == 32000000)
SYNR = 0x43;
#elif(BUS_CLOCK == 24000000)
SYNR = 0x42;
#endif
REFDV = 0x81; //PLLCLK=2×OSCCLK×(SYNR+1)/(REFDV+1)=64MHz ,fbus=32M
PLLCTL =PLLCTL|0x70; //Enable PLL circuit
asm NOP;
asm NOP;
while(!(CRGFLG&0x08)); //PLLCLK is Locked already
CLKSEL |= 0x80; //set PLLCLK as sysclk
}
/*************************************************************/
/* 初始化SCI */
/*************************************************************/
void INIT_SCI(void)
{
SCI0BD = BUS_CLOCK/16/BAUD; //设置SCI0波特率为9600
SCI0CR1 = 0x00; //设置SCI0为正常模式,八位数据位,无奇偶校验
SCI0CR2 = 0x0c; //允许发送数据,禁止中断功能
}
/*************************************************************/
/* 串口发送函数 */
/*************************************************************/
void SCI_send(unsigned char data)
{
while(!SCI0SR1_TDRE); //等待发送数据寄存器(缓冲器)为空
SCI0DRL = data;
}
/*************************************************************/
/* 串口发送字符串函数 */
/*************************************************************/
void send_string(unsigned char *putchar)
{
while(*putchar!=0x00) //判断字符串是否发送完毕
{
SCI_send(*putchar++);
}
}
/*************************************************************/
/* 主函数 */
/*************************************************************/
void main(void) {
unsigned char a;
DisableInterrupts;
INIT_PLL();
INIT_SCI();
LEDCPU_dir = 1;
EnableInterrupts;
LEDCPU = LED_ON;
for(;;) //循环发送字符串
{
if(SCI0SR1_RDRF==1){
a=SCI0DRL;
send_string(putstring);
LEDCPU=~LEDCPU; //闪灯
}
}
}
利用以上程序实行xs128与
matlab
串口
通信
。
发送指令1返回123
串口通信助手v2.1.rar
(2013-4-18 17:53 上传)
17.46 KB, 下载次数: 91
串口通信
回帖
(28)
chongba
2013-4-30 13:03:54
楼主,,,,太强大了!!
楼主,,,,太强大了!!
举报
风驰天下
2013-5-10 14:12:09
呵呵,不错
呵呵,不错
举报
陈源
2013-5-11 19:21:52
必须的顶起!
必须的顶起!
举报
黄lo!
2013-5-13 00:00:27
围观一个。。。。。。。。。
围观一个。。。。。。。。。
举报
韩井玉
2013-6-4 22:21:09
谢谢分享!!!!
谢谢分享!!!!
举报
givealittletime
2013-6-5 10:20:31
kankan, xiexie ......
kankan, xiexie ......
举报
小杰11
2013-11-24 20:12:13
{:1:}
{:1:}
举报
刘天雨
2013-11-25 11:07:33
不错,学习学习,谢谢分享
不错,学习学习,谢谢分享
举报
电翼小组
2013-11-29 09:22:53
{:20:}{:20:}
{:20:}{:20:}
举报
超级口水哥
2014-5-6 11:48:47
好东西,下载了
好东西,下载了
举报
女兆火山
2014-5-7 16:30:48
楼主,,,,太强大了!!
楼主,,,,太强大了!!
举报
fpga539
2014-5-20 22:01:03
楼主你很强大,你还是干hang tian的
楼主你很强大,你还是干hang tian的
举报
周金帅
2014-6-3 08:20:37
楼主,,,,太强大了!!
楼主,,,,太强大了!!
举报
张庆林
2014-8-17 21:14:07
好像很不错。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
好像很不错。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
举报
谢风
2015-9-27 15:19:58
好东西,感谢楼主分享
好东西,感谢楼主分享
举报
胡静
2015-12-28 20:12:51
matlab这边怎么编的
matlab这边怎么编的
举报
tbhtom
2016-2-9 11:40:52
很好的资料,建模调试好工具。
很好的资料,建模调试好工具。
举报
lucifer12333333
2016-3-15 18:33:01
好东西,下载学习
好东西,下载学习
举报
wujianwei3980
2016-3-15 22:56:00
正***这个串***具,多谢分享
正***这个串***具,多谢分享
举报
更多回帖
rotate(-90deg);
回复
相关帖子
测试
matlab
XS128
串口
收发
程序
40
如何将
XS128
与Arduino
实现
串口
通信
?
2002
飞思卡尔直立车
XS128
程序
和详解
331
基于
XS128
和DZ60的电池管理系统的设计与
实现
4
基于
xs128
的电机调速及控制
54
xs128
学习资料
15531
XS128
求问
2213
xs128
中文资料
10
关于
xs128
单片机的一点小小学习心得--认识
xs128
18
跪求
XS128
的学习资料教程
5126
发帖
登录/注册
20万+
工程师都在用,
免费
PCB检查工具
无需安装、支持浏览器和手机在线查看、实时共享
查看
点击登录
登录更多精彩功能!
首页
论坛版块
小组
免费开发板试用
ebook
直播
搜索
登录
×
20
完善资料,
赚取积分