OpenEdv-开源电子网

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

自己在7月份,画了一块STM32F103ZET6的开发板(自玩的),有图有真相。

[复制链接]

39

主题

597

帖子

2

精华

金牌会员

Rank: 6Rank: 6

积分
2120
金钱
2120
注册时间
2011-9-3
在线时间
122 小时
发表于 2012-12-2 14:26:17 | 显示全部楼层 |阅读模式
曾经在7月份画了一块STM32F103ZET6的开发板(自玩用),一直没有时间玩,今天无聊把它焊接一部分进行调试,CPU运行正常,移植测试了原子兄旗舰板的前面几个例子,都能正确跑。当测试到TFT那个例子时,出现一些问题:区分命令和数据我用的是FSMC_A0,背光我用PA1,其它的跟原子兄的MINI板控制一样。LCD的ID是能够正确读取的,我的为B505,但是不能正常跑主程序,即变换颜色的那部分代码,现在找不到原因出在哪




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

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2012-12-2 19:06:50 | 显示全部楼层
白屏?
读ID正确了,剩下的问题应该不大的。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

8

主题

175

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
407
金钱
407
注册时间
2011-3-31
在线时间
51 小时
发表于 2012-12-2 22:19:26 | 显示全部楼层

能正确读ID,剩下的问题你看看.是不是DMA设置的问题,那里有一个LCD的地址设置,原子的进入主界面的时候是使用DMA把SRAM中的数据送到LCD的总线上的...
检查一下这个函数  红色部分

////////////////////////////////////////////////////////////////////////////////////
//LCD DMA初始化部分
u16 LCD_CUR_LINE;
u32 DMA2_MEM_LEN=320*240/2;//保存DMA每次数据传送的长度 半屏幕     
void LCD_DMA_Coinfig(void)
{               

 RCC_AHBPeriphClockCmd(RCC_AHBPeriph_DMA2, ENABLE); //使能DMA传输
 
    DMA_DeInit(DMA2_Channel5);   //将DMA的通道1寄存器重设为缺省值
 DMA_InitStructure.DMA_PeripheralBaseAddr = (u32)LCD_GRAM_BUF;  //DMA外设ADC基地址
 DMA_InitStructure.DMA_MemoryBaseAddr = (u32)0X6C000800;  //DMA内存基地址
 DMA_InitStructure.DMA_DIR = DMA_DIR_PeripheralSRC;  //数据传输方向,从内存读取发送到外设
 DMA_InitStructure.DMA_BufferSize = DMA2_MEM_LEN;  //DMA通道的DMA缓存的大小
 DMA_InitStructure.DMA_PeripheralInc = DMA_PeripheralInc_Enable;  //外设地址寄存器不变
 DMA_InitStructure.DMA_MemoryInc = DMA_MemoryInc_Disable;  //内存地址寄存器递增
 DMA_InitStructure.DMA_PeripheralDataSize = DMA_PeripheralDataSize_HalfWord;  //数据宽度为8位
 DMA_InitStructure.DMA_MemoryDataSize = DMA_MemoryDataSize_HalfWord; //数据宽度为8位
 DMA_InitStructure.DMA_Mode = DMA_Mode_Normal;  //工作在正常缓存模式
 DMA_InitStructure.DMA_Priority = DMA_Priority_Medium; //DMA通道 x拥有中优先级
 DMA_InitStructure.DMA_M2M = DMA_M2M_Enable;  //DMA通道x没有设置为内存到内存传输
 DMA_Init(DMA2_Channel5, &DMA_InitStructure);  //根据DMA_InitStruct中指定的参数初始化DMA的通道USART1_Tx_DMA_Channel所标识的寄存器  
         
}
                                        


 

 

代开发智能楼宇对讲通讯、交直流无刷电机驱动、无功功率补偿器、电力仪表、电气火灾监控系统、(电梯远程监控、对讲通讯系统、TFT楼层显示)开发等。代理记账(限北京)联系方式:15300201607?shop65501025.taobao.com
回复 支持 反对

使用道具 举报

7

主题

74

帖子

0

精华

初级会员

Rank: 2

积分
129
金钱
129
注册时间
2011-9-3
在线时间
4 小时
发表于 2012-12-3 22:09:09 | 显示全部楼层
板子布局很好
http://shop60782849.taobao.com/显示屏专卖
回复 支持 反对

使用道具 举报

42

主题

568

帖子

0

精华

高级会员

Rank: 4

积分
784
金钱
784
注册时间
2010-12-19
在线时间
5 小时
发表于 2012-12-4 09:09:49 | 显示全部楼层
嘿嘿,方便提供PCB和原理图吗?

学习别人怎么画电路图,同时偷偷懒。
一个上蹿下跳的猴子~~~
回复 支持 反对

使用道具 举报

39

主题

597

帖子

2

精华

金牌会员

Rank: 6Rank: 6

积分
2120
金钱
2120
注册时间
2011-9-3
在线时间
122 小时
 楼主| 发表于 2012-12-6 22:32:49 | 显示全部楼层
回复【2楼】正点原子:
白屏? 读ID正确了,剩下的问题应该不大的。
---------------------------------
是的。白屏,工作太忙,没得时间上来……我也是用FSMC。主程序是跑了,因为LED在闪,但就是LCD换颜色部分没动作。也用JTAG试过了。没发现其它问题……
回复 支持 反对

使用道具 举报

39

主题

597

帖子

2

精华

金牌会员

Rank: 6Rank: 6

积分
2120
金钱
2120
注册时间
2011-9-3
在线时间
122 小时
 楼主| 发表于 2012-12-6 22:35:53 | 显示全部楼层
回复【3楼】yjwpm:

能正确读ID,剩下的问题你看看.是不是DMA设置的问题,那里有一个LCD的地址设置,原子的进入主界面的时候是使用DMA把SRAM中的数据送到LCD的总线上的...检查一下这个函数  红色部分
//////////////////////////////////////////////////////////////////////////////////////LCD DMA初始化部分u16 LCD_CUR_LINE;u32 DMA2_MEM_LEN=320*240/2;//保存DMA每次数据传送的长度 半屏幕      void LCD_DMA_Coinfig(void){                
 RCC_AHBPeriphClockCmd(RCC_AHBPeriph_DMA2, ENABLE); //使能DMA传输     DMA_DeInit(DMA2_Channe
......
---------------------------------
哦,这样啊,我的SRAM还没有焊上去呢,有可能是这方面的原因吧,有空我再折腾一下。谢谢!
回复 支持 反对

使用道具 举报

1

主题

59

帖子

0

精华

高级会员

Rank: 4

积分
967
金钱
967
注册时间
2012-3-27
在线时间
285 小时
发表于 2012-12-6 22:36:45 | 显示全部楼层
把原子的#define LCD_BASE   ((u32)(0x6C000000 | 0x000007FE))改为#define LCD_BASE   ((u32)(0x60000000 | 0x0C000000))试试。
回复 支持 反对

使用道具 举报

39

主题

597

帖子

2

精华

金牌会员

Rank: 6Rank: 6

积分
2120
金钱
2120
注册时间
2011-9-3
在线时间
122 小时
 楼主| 发表于 2012-12-6 22:41:48 | 显示全部楼层
回复【5楼】wolfdong7:
嘿嘿,方便提供PCB和原理图吗? 学习别人怎么画电路图,同时偷偷懒。 
---------------------------------
其实网上有很多这方面的,随便一搜就很多了,你可以从原理图开始,走完整个过程基本就会了。
另外:我这个是首次用AD9来画板(以前在学校学的是PROTEL99,毕业出来用PADS),后面想跳槽,就用AD9画了一块板,从头到尾都是自己画的。一方面可以自己画板学习STM32,一方面也玩这个软件。还好第一次用AD9画这块板目前为止没有发现什么明显的错误,不过有一个串口芯片封装搞错了,呵呵。
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-7-19 05:35

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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