OpenEdv-开源电子网

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

工程错误,各位帮忙看看,谢谢!

[复制链接]

38

主题

165

帖子

0

精华

高级会员

Rank: 4

积分
646
金钱
646
注册时间
2014-3-5
在线时间
67 小时
发表于 2014-5-28 10:30:12 | 显示全部楼层 |阅读模式
5金钱


主函数:

#include "stm32f10x_lib.h"

#include "delay.h"
#include "usart.h"
#include "sys.h"
#include "tft1.h"
#include "led.h"

int main(void)
{
u16 lcd_code;
Stm32_Clock_Init(9);
delay_init(72);
uart_init(72,9600);
led_init();
lcd_init();
led0=1;
while(1)
{
led1=~led1;
delay_ms(50);    
lcd_writereg(0x0000,0x0001);
delay_ms(50);
lcd_code=lcd_readreg(0x0000);
printf("LCD ID:%x\n",lcd_code);
delay_ms(200);
}
}


TFT.c

#include <stm32f10x_lib.h>
#include "sys.h"
#include "tft1.h"

// 硬件连接:
// lcd_bl -> PC10
// lcd_cs -> PC9
// lcd_rs -> PC8
// lcd_wr -> PC7
// lcd_rd -> PC6

// lcd_data -> PB0-15

void tft_init(void)
{
RCC->APB2ENR|=1<<3;  //使能GPIOB时钟
RCC->APB2ENR|=1<<4;  //使能GPIOC时钟
RCC->APB2ENR|=1<<0;  //使能辅助时钟

JTAG_Set(SWD_ENABLE);   //使能SWD,关闭JTAG
  
GPIOC->CRH&=0XFFFFF000; //PORTC6~10  推挽输出
GPIOC->CRH|=0X00000333; 
GPIOC->CRL&=0X00FFFFFF;
GPIOC->CRL|=0X33000000;  
GPIOC->ODR|=0X07C0;   
  
GPIOB->CRH=0X33333333; //PORTB 推挽输出
GPIOB->CRL=0X33333333;   
GPIOB->ODR=0XFFFF;

}

//说明:数据是16位的,寄存器是八位

void lcd_write_reg(u8 data)
{
lcd_rs=0;  //写地址
lcd_cs=0;  //使能tft
lcd_data(data);
lcd_wr=0;  //拉低写数据
lcd_wr=1;  //上升沿把数据送到TFT
lcd_cs=1;  //关闭TFT
}

void lcd_write_data(u16 data)
{
lcd_rs=1;  //写数据
lcd_cs=0;  //使能tft
lcd_data(data);
lcd_wr=0;  //拉低写数据
lcd_wr=1;  //上升沿把数据送到TFT
lcd_cs=1;  //关闭TFT
}

void lcd_writereg (u8 lcd_reg,u16 reg_Value)  //写寄存器地址和写寄存器值
{
lcd_write_reg(lcd_reg);
lcd_write_data(reg_Value);
}

u16 lcd_readreg(u8 lcd_reg)
{
u16 read_data;
lcd_write_reg(lcd_reg);

GPIOB->CRL=0X88888888;  //PB0-7  上拉输入
GPIOB->CRH=0X88888888;  //PB8-15 上拉输入
GPIOB->ODR=0XFFFF;      //全部输出高

lcd_rs=1;
lcd_cs=0;
//读取数据(读寄存器时,并不需要读2次)
lcd_rd=0;    
lcd_rd=1;
read_data=lcd_data_in;  
lcd_cs=1; 
 
GPIOB->CRL=0X33333333; //PB0-7  上拉输出
GPIOB->CRH=0X33333333; //PB8-15 上拉输出
GPIOB->ODR=0XFFFF;    //全部输出高
return read_data;
}

TFT.h


#ifndef __TFT_H
#define __TFT_H

#include <stm32f10x_lib.h>
#include "sys.h"

// 硬件连接:
// lcd_bl -> PC10
// lcd_cs -> PC9
// lcd_rs -> PC8
// lcd_wr -> PC7
// lcd_rd -> PC6

// lcd_data -> PB0-15

#define lcd_bl PCout(10);
#define lcd_cs PCout(9);
#define lcd_rs PCout(8);
#define lcd_wr PCout(7);
#define lcd_rd PCout(6);

#define lcd_data(x) GPIOB->ODR=x;
#define lcd_data_in GPIOB->IDR;

void lcd_init(void);
//void lcd_write_reg(u8 data);
//void lcd_write_data(u16 data);
void lcd_writereg (u8 lcd_reg,u16 reg_Value);  //写寄存器地址和写寄存器值
u16 lcd_readreg(u8 lcd_reg);

#endif

错误:



Build target 'Target 1'
assembling STM32F10x.s...
compiling tft_main.c...
compiling delay.c...
compiling sys.c...
compiling usart.c...
compiling tft1.c...
..\lesson\tft1\tft1.c(49): error:  #29: expected an expression
..\lesson\tft1\tft1.c(50): error:  #29: expected an expression
..\lesson\tft1\tft1.c(52): error:  #29: expected an expression
..\lesson\tft1\tft1.c(53): error:  #29: expected an expression
..\lesson\tft1\tft1.c(54): error:  #29: expected an expression
..\lesson\tft1\tft1.c(59): error:  #29: expected an expression
..\lesson\tft1\tft1.c(60): error:  #29: expected an expression
..\lesson\tft1\tft1.c(62): error:  #29: expected an expression
..\lesson\tft1\tft1.c(63): error:  #29: expected an expression
..\lesson\tft1\tft1.c(64): error:  #29: expected an expression
..\lesson\tft1\tft1.c(82): error:  #29: expected an expression
..\lesson\tft1\tft1.c(83): error:  #29: expected an expression
..\lesson\tft1\tft1.c(85): error:  #29: expected an expression
..\lesson\tft1\tft1.c(86): error:  #29: expected an expression
..\lesson\tft1\tft1.c(88): error:  #29: expected an expression
compiling led.c...
Target not created


工程打包了!  




TFT程序1.zip

368.42 KB, 下载次数: 41

最佳答案

查看完整内容[请看2#楼]

 你的tft头文件#define文件后面有分号是不对的,不要!
Hard work!
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

25

帖子

0

精华

初级会员

Rank: 2

积分
60
金钱
60
注册时间
2012-10-23
在线时间
1 小时
发表于 2014-5-28 10:30:13 | 显示全部楼层
 你的tft头文件#define文件后面有分号是不对的,不要!


回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-5-29 00:03:05 | 显示全部楼层
估计是有非法字符,删了代码重新输入一遍试试。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

38

主题

165

帖子

0

精华

高级会员

Rank: 4

积分
646
金钱
646
注册时间
2014-3-5
在线时间
67 小时
 楼主| 发表于 2014-5-29 11:49:50 | 显示全部楼层
回复【3楼】哇哈哈0608:
---------------------------------
嗯,谢谢了!  做天写STM8也是这样的错误! 呵呵
Hard work!
回复

使用道具 举报

38

主题

165

帖子

0

精华

高级会员

Rank: 4

积分
646
金钱
646
注册时间
2014-3-5
在线时间
67 小时
 楼主| 发表于 2014-5-29 11:50:36 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
解决了,谢谢原子哥!
Hard work!
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-5-29 23:03:30 | 显示全部楼层
回复【5楼】杂牌电子:
---------------------------------
麻烦写一下解决办法,方便其他朋友参考,谢谢.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

38

主题

165

帖子

0

精华

高级会员

Rank: 4

积分
646
金钱
646
注册时间
2014-3-5
在线时间
67 小时
 楼主| 发表于 2014-5-30 09:53:05 | 显示全部楼层
回复【6楼】正点原子:
---------------------------------
 怎么修改解决办法?
Hard work!
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-5-30 20:32:21 | 显示全部楼层
回复【7楼】杂牌电子:
---------------------------------
直接在后面回复即可.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

11

主题

46

帖子

0

精华

初级会员

Rank: 2

积分
121
金钱
121
注册时间
2014-6-25
在线时间
5 小时
发表于 2014-6-30 21:03:12 | 显示全部楼层
回复【3楼】哇哈哈0608:
---------------------------------
是的,谢谢!
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-7-6 20:48

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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