اطلاعیه

Collapse
No announcement yet.

راه اندازی سون سگمنت با STM32

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    راه اندازی سون سگمنت با STM32

    سلام
    من می خوام اعداد 1 تا 6 را روی یک سون سگمنت 6 رقمی نمایش بدم. کدی که نوشتم بصورت زیر هست :

    #include "stm32f10x.h"
    int main (void)
    {
    SystemInit();
    uint32_t j;
    RCC->APB2ENR |= RCC_APB2ENR_IOPBEN; /* Enable GPIOB clock */
    RCC->APB2ENR |= RCC_APB2ENR_IOPDEN; /* Enable GPIOD clock */
    /****for address****/
    GPIOB->CRL &= ~0xFFFFFFFF; /* PD clear*/
    GPIOB->CRL |= 0x11111111 ; /* PD output Max Speed 10 Mz(push-pull)*/
    /****for data****/
    GPIOB->CRH &= ~0xFFFFFFFF; /* PD clear */
    GPIOB->CRH |= 0x11111111 ; /* PD output Max Speed 10 Mz(push-pull) */
    while (1)
    {
    GPIOB -> BSRR = 0x82010000;
    GPIOB -> BSRR = 0xf920;
    for(j=0;j<5555;j++);
    GPIOB -> BSRR = 0xf9200000;
    GPIOB -> BSRR = 0xa410;
    for(j=0;j<5555;j++);
    GPIOB -> BSRR = 0xa4100000;
    GPIOB -> BSRR = 0xb008;
    for(j=0;j<5555;j++);
    GPIOB -> BSRR = 0xb0080000;
    GPIOB -> BSRR = 0x9904;
    for(j=0;j<5555;j++);
    GPIOB -> BSRR = 0x99040000;
    GPIOB -> BSRR = 0x9202;
    for(j=0;j<5555;j++);
    GPIOB -> BSRR = 0x92020000;
    GPIOB -> BSRR = 0x8201;
    for(j=0;j<5555;j++);
    }
    }

    مشکل من الان اینه که فقط اعداد 1 تا 4 رو نمایش میده و 5 و 6 رو نمایش نمی ده. البته تو پروتوس تست کردم.
    یه مشکل دیگه که دارم اینه که نمشه رجیستر RCC_CFGR رو تغییر بدم.یعنی وقتی مقداردهی می کنم مقدارش هیچ تغییری نمیکنه
    لطفا راهنماییم کنید. با تشکر
لطفا صبر کنید...
X