Question
8-bit data bus setting
Posted on January 21, 2015 at 21:34 hi all Where is my error check this code? How do I make an 8-bit data bus? thanks
#include <
stm32f10x.h > #include < stm32f10x_conf.h > #include < stm32f10x_rcc.h > #include < stm32f10x_gpio.h > #include ''fonts.h'' #include < stdio.h > #include < string.h > #define Set_CS GPIO_SetBits(GPIOC,GPIO_Pin_1); #define Clr_CS GPIO_ResetBits(GPIOC,GPIO_Pin_1); #define Set_RS GPIO_SetBits(GPIOB,GPIO_Pin_9); #define Clr_RS GPIO_ResetBits(GPIOB,GPIO_Pin_9); #define Set_WR GPIO_SetBits(GPIOB,GPIO_Pin_8); #define Clr_WR GPIO_ResetBits(GPIOB,GPIO_Pin_8); #define Set_RST GPIO_SetBits(GPIOC,GPIO_Pin_0); #define Clr_RST GPIO_ResetBits(GPIOC,GPIO_Pin_0); #define Set_LED GPIO_SetBits(GPIOB,GPIO_Pin_11); #define Clr_LED GPIO_ResetBits(GPIOB,GPIO_Pin_11); GPIO_InitTypeDef GPIO_InitStructure; //************************************************************************ void LCD_InitializePorts(void); void Write_Data(unsigned char data); void Delay(volatile uint32_t nCount); //************************************************************************* void Delay(volatile uint32_t nCount) { for (; nCount != 0; nCount--); } //************************************************************************* void Write_Data(unsigned char data) { Set_RS; Clr_CS; GPIOB->ODR = (GPIOB->ODR&0xff00)|(data&0x00ff); //PIN_0 1.2.3.4.5.6.7 Clr_WR; Set_WR; Set_CS; LCD_Delay(); } //************************************************************************* void LCD_InitializePorts(void) { GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); GPIO_StructInit(&GPIO_InitStructure); //PIN_0 1.2.3.4.5.6.7 LCD DATA PORT// //WR PIN 8 // RS PIN 9 // //LED PIN 11// GPIO_InitStructure.GPIO_Pin=GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7|GPIO_Pin_8|GPIO_Pin_9|GPIO_Pin_11; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_Init(GPIOB, &GPIO_InitStructure); RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE); GPIO_StructInit(&GPIO_InitStructure); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1;//RST pin //CS pin GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_Init(GPIOC, &GPIO_InitStructure); } //************************************************************************* int main(void) { Delay(0XF111F); LCD_InitializePorts(); while(1) { Set_LED ; Delay(0XF111F); Clr_LED ; Delay(0XF111F); } } //*************************************************************************