搜索
bottom↓
回复: 2

GCC模块化编程遇到的问题

[复制链接]

出0入0汤圆

发表于 2011-8-14 17:04:13 | 显示全部楼层 |阅读模式
以下是我的程序  哪位能帮我解决一下 谢谢了  
#ifndef __USAR_H__
#define __USAR_H__

//初始化异步串口通信
void usart_init();

//串口数据发送
extern void tx_uasrt(unsigned char aDATA);

//串口数据接收
unsigned char rx_usart();

//发送字符串
extern void Usart_PutString(unsigned char *pcString);

#endif




/*mega128异步串口通信简介

异步正常模式
(U2X=0)波特率计算公式
BAUD = Fosc/16(UBRR+1)即UBRR = Fosc/16BAUD - 1;

异步倍数模式
(U2X=1)波特率计算公式
BAUD = Fosc/8(UBRR+1)即UBRR = Fosc/8BAUD - 1;

*/

#include<avr/io.h>
#include"USAR.H"


//串口通信初始化
void usart_init()
{
       
        UBRR0H = 0;//波特率设定为9600
        UBRR0L = 0X67;
        UCSR0B |= (1<<RXEN0)|(1<<TXEN0);//接受发送使能
        UCSR0C |= (1<<UCSZ01);//8位数据传输

}

//串口数据发送

void tx_uasrt(unsigned char aDATA)
{
       
        while(!(UCSR0A & (1<<UDRE0)));//等待数据寄存器为空
        UDR0 = aDATA;
}


//串口数据接收
unsigned char rx_usart()
{
        unsigned char aDAT;
        aDAT = UDR0;
        while(!(UCSR0A & (1<<RXC0)));//等待数据传输完毕
       
        return (aDAT);
}

//发送字符串
void Usart_PutString(unsigned char *pcString)
{
        while (*pcString)
        {
                tx_uasrt(*pcString++);
        }
        tx_uasrt(0x0D);
        tx_uasrt(0x0A);  //结尾发送回车换行
}





/*
异步串口通信测试程序
2011年
*/
#include<avr/io.h>
#include"USAR.H"
void Usart_PutString(unsigned char *pcString);


int main()
{
        usart_init();
       
        tx_uasrt(0x30+1);
        Usart_PutString("我是中国人 不是东亚病夫!!");

}


出现的错误警告
../MAIN.C:15: error: invalid conversion from 'const char*' to 'unsigned char*'
../MAIN.C:15: error:   initializing argument 1 of 'void Usart_PutString(unsigned char*)'


哪位能帮我解决一下 谢谢了

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出0入0汤圆

 楼主| 发表于 2011-8-14 17:06:22 | 显示全部楼层
如果把主函数即
int main()
{
usart_init();

tx_uasrt(0x30+1);
Usart_PutString("我是中国人 不是东亚病夫!!");

}

这段函数 放在 第二个文件中 编译一切正常  可是 单独在一个文件里面却不行  不知道为什么!!求救!!

出0入0汤圆

发表于 2017-5-1 00:00:33 来自手机 | 显示全部楼层
extern void usart_init();
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-27 13:09

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表