OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2586|回复: 2

字符串指针

[复制链接]

2

主题

8

帖子

0

精华

新手入门

积分
19
金钱
19
注册时间
2016-1-8
在线时间
4 小时
发表于 2016-1-8 19:51:11 | 显示全部楼层 |阅读模式
1金钱
void show_char(u16 XSA,u16 XEA,u16 YSA,u16 YEA,u8 *p)
{
        unsigned char i,j,m,n;
        LCD_WR_REG(lcddev.setxcmd);
        LCD_WR_DATA(XSA>>8);LCD_WR_DATA(XSA&0XFF);
        LCD_WR_DATA(XEA>>8);LCD_WR_DATA(XEA&0XFF);
        LCD_WR_REG(lcddev.setycmd);
        LCD_WR_DATA(YSA>>8);LCD_WR_DATA(YSA&0XFF);
        LCD_WR_DATA(YEA>>8);LCD_WR_DATA(YEA&0XFF);
        LCD_WriteRAM_Prepare();
        for(i=0;i<3;i++,p++)
        {
                for(j=0;j<36;j++)
                {
                        m=asc2_2412[(*p)];
                        for(n=0;n<8;n++)
                        {
                                LCD->LCD_RAM = ((m&0x80)?0xF800:BLUE);
                                m=(m<<1);
                        }
                }
        }
}

int main(void)
{
        int i,j=0,m,n;
        SystemInit();
        delay_init();                     //延时函数初始化
        USART1_Config();
        LCD_Init();
        GPIO_WriteBit(GPIOB, GPIO_Pin_0, Bit_SET);
        while(1)
        {
                if(lcddev.id==0X5310)
                {                               
                        printf("\r\n    %d   \r\n",lcddev.id);       
                        GPIO_WriteBit(GPIOB, GPIO_Pin_5, Bit_RESET);         
                }
                else
                        printf("78");
                LCD_WR_REG(lcddev.setxcmd);
                LCD_WR_DATA(0>>8);LCD_WR_DATA(0&0XFF);
                LCD_WR_DATA(55>>8);LCD_WR_DATA(55&0XFF);
                LCD_WR_REG(lcddev.setycmd);
                LCD_WR_DATA(0>>8);LCD_WR_DATA(0&0XFF);
                LCD_WriteRAM_Prepare();                     //开始写入GRAM                   
                for(i=0;i<5;i++)
                {
                        for(j=0;j<392;j++)
                        {
                                m=zhang[i][j];
                                for(n=0;n<8;n++)
                                {
                                        LCD->LCD_RAM = ((m&0x80)?0xF800:BLUE);
                                        m=(m<<1);
                                }
                        }
                }
                show_char(56,79,0,0xff,"1029");
                delay_us(10000);
        }
}
调用这个函数的是show_char(56,79,0,0xff,"1029");请问怎么错了,怎么改?大侠们。错误提示是
main.c(926): error:  #513: a value of type "unsigned char *" cannot be assigned to an entity of type "unsigned char"

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2016-1-10 23:46:08 | 显示全部楼层
回复

使用道具 举报

20

主题

468

帖子

3

精华

金牌会员

Rank: 6Rank: 6

积分
1684
金钱
1684
注册时间
2014-2-25
在线时间
230 小时
发表于 2016-1-11 08:53:04 | 显示全部楼层
改成这样  show_char(56,79,0,0xff,(char*)"1029");
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-21 21:41

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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