Noor Us Sabah
Newbie level 4
- Joined
- Jun 15, 2014
- Messages
- 5
- Helped
- 0
- Reputation
- 0
- Reaction score
- 0
- Trophy points
- 1
- Activity points
- 16
plzzzzz help me to find this code .....submissin date on this tuesday ,.....plzzz kindly
Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.
#define RCC_APB2ENR ( * ((volatile unsigned long*) 0x40021018))
#define GPIOA_CRL ( * ((volatile unsigned long*) 0x40010800))
#define GPIOA_CRH ( * ((volatile unsigned long*) 0x40010804))
#define GPIOA_ODR ( * ((volatile unsigned long*) 0x4001080C))
#define GPIOB_CRL ( * ((volatile unsigned long*) 0x40010C00))
#define GPIOB_CRH ( * ((volatile unsigned long*) 0x40010C04))
#define GPIOB_ODR ( * ((volatile unsigned long*) 0x40010C0C))
#define GPIOC_CRL ( * ((volatile unsigned long*) 0x40011000))
#define GPIOC_CRH ( * ((volatile unsigned long*) 0x40011004))
#define GPIOC_ODR ( * ((volatile unsigned long*) 0x4001100C))
void Delay(void)
{
volatile unsigned int i;
for (i = 0; i < 325000; i++) //DELAY OF 1 SECOND
{
}
}
void SystemInit(void)
{
}
int main(void)
{
RCC_APB2ENR |= 0x00000018;
volatile unsigned short k;
GPIOC_CRH &=0x11111111;
GPIOC_CRL &=0x11111111;
GPIOA_CRH &=0x11111111;
GPIOB_CRH &=0x11111111;
volatile unsigned int A =0x0000;
volatile unsigned int B =0x8000;
volatile unsigned int C =0x2000;
volatile unsigned int D =0x0800;
volatile unsigned int E =0x0200;
volatile unsigned int F =0x0080;
volatile unsigned int G =0x0020;
volatile unsigned int H =0x0008;
volatile unsigned int I =0x0002;
while(1)
{
for(k=1;k<17;k++)
{
Delay();
Delay();
if(k>=1 && k<=4)
{
GPIOA_ODR =A;
GPIOB_ODR =A;
if(k==1)
{
GPIOC_ODR =B;
}
else if(k==2)
{
GPIOC_ODR =C;
}
else if(k==3)
{
GPIOC_ODR =D;
}
else
{
GPIOC_ODR =E;
}
}
if(k>=5 && k<=8)
{
GPIOC_ODR =A;
GPIOB_ODR =A;
if(k==5)
{
GPIOA_ODR =B;
}
else if(k==6)
{
GPIOA_ODR =C;
}
else if(k==7)
{
GPIOA_ODR =D;
}
else
{
GPIOA_ODR =E;
}
}
if(k>=9 && k<=12)
{
GPIOA_ODR =A;
GPIOB_ODR =A;
if(k==9)
{
GPIOC_ODR =F;
}
else if(k==10)
{
GPIOC_ODR =G;
}
else if(k==11)
{
GPIOC_ODR =H;
}
else
{
GPIOC_ODR =I;
}
}
if(k>=13 && k<=16)
{
GPIOA_ODR =A;
GPIOC_ODR =A;
if(k==13)
{
GPIOB_ODR =B;
}
else if(k==14)
{
GPIOB_ODR =C;
}
else if(k==15)
{
GPIOB_ODR =D;
}
else
{
GPIOB_ODR =E;
}
}
}
}
}
#include "main.h"
#include "PWM.h"
void PWM_Init(void)
{
RCC_APB2ENR |= 0x00000804; //enable clock to GPIO port A and Timer 1
GPIOA_CRH &= 0xFFFFF000; //clear previous config for port A pin 8,9,10
GPIOA_CRH |= 0x00000999; //config port A pin 8,9,10 as 10Mhz push pull alternate purpose output.
TIM1_CR1 = 0x0080;
TIM1_CNT = 0;
TIM1_PSC = 7;
TIM1_ARR = (20000-1);
TIM1_CCMR1 = 0x6868;
TIM1_CCMR2 = 0x0068;
TIM1_CCER = 0x0111;
TIM1_CCR1 = 1000;
TIM1_CCR2 = 1000;
TIM1_CCR3 = 1000;
TIM1_EGR = 0x0001;
TIM1_BDTR = 0x8000;
TIM1_CR1 |= 1;
}
void PWM_Ch1_drive_motor(const uint16_t PERIOD)
{
if((PERIOD>=10)&&(PERIOD<=19950))
{
H TIM1_CCR1 = PERIOD;
}
else if(PERIOD<10)
{
TIM1_CCR1=10;
}
else
{
TIM1_CCR1=19950;
}
}