注册 登录
查看: 768|回复: 6

用山外的库发送数据

[复制链接]
发表于 2015-1-29 18:20:09 | 显示全部楼层 |阅读模式
uint8 speedcircle【100】=0;
sendimg(*speedcircle,100);
出现Error[Pe075]: operand of * must be a pointer


我想问一下如果用sendimg这个函数,要怎么定义发送的数组才能不报错?
还有如果我想发送uint16的数组,那是不是要改
void uart_putchar (UARTn_e uratn, char ch)
{
    if(uratn == UART0)
    {
        //等待发送缓冲区空
        while(!(UART0_S1 & UART0_S1_TDRE_MASK));

        //发送数据
        UART0_D = (uint8)ch;
    }
    else
    {
        //等待发送缓冲区空
        while(!(UART_S1_REG(UARTN[uratn]) & UART_S1_TDRE_MASK));

        //发送数据
        UART_D_REG(UARTN[uratn]) = (uint8)ch;
    }
}


括号里面的(uint8)为(uint16)???

回复

使用道具 举报

发表于 2015-1-29 20:19:27 | 显示全部楼层
强制类型转换
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-1-29 20:54:36 | 显示全部楼层

怎么能把数组的类型转换为指针类型?
回复 支持 反对

使用道具 举报

发表于 2015-1-29 23:01:03 | 显示全部楼层
sendimg(speedcircle,100);
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-1-30 01:57:46 | 显示全部楼层
茹音景 发表于 2015-1-29 23:01
sendimg(speedcircle,100);

没有了*也报错Error[Pe167]: argument of type "uint8 (*)[80]" is incompatible with parameter of type "uint8 *"

回复 支持 反对

使用道具 举报

发表于 2015-1-30 02:02:18 | 显示全部楼层
摄像头学渣 发表于 1422554266
没有了*也报错Error: argument of type "uint8 (*)[80]" is incompatible with parameter of type "uint8 *"
你再发一次你的代码来看看。感觉你的代码跟你报错的内容矛盾的。
一时是80,一时是100.
来自PC客户端 来自PC客户端
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-1-30 16:37:32 | 显示全部楼层
山外メ雲ジ 发表于 2015-1-30 02:02
你再发一次你的代码来看看。感觉你的代码跟你报错的内容矛盾的。
一时是80,一时是100.

解决了,是外部调用的时候写成了
extern uint8 img_buff;
改成extern uint8 img_buff[80];就好了


但现在加上速度环出现了程序跑飞的情况,想问一下怎么避免?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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