K&R как и всегда . И что значит "Си, который используется в Keil" ?
С он и в Африке С ...
Вид для печати
K&R как и всегда . И что значит "Си, который используется в Keil" ?
С он и в Африке С ...
Вот ...http://rghost.ru/54676938
Мда ... Ну для начала читай это http://lib.ru/CTOTOR/starterkit.txt
Не надо искать никаких С для МК . Если привык к специфическим фичам каких-то недокомпиляторов весьма печально...
Можно, я тоже пролезу в эту школу, как начинающий?
Я второй день ковыряюсь со своей девбордой на STM32L152RB, что о ней известно - есть там суровые отличия от F, код без плясок с бубном не перенесешь.
Поэтому я пользуюсь макросами от ZiB для инициализации GPIO.
С этим контроллером я на уровне "нажать кнопу, зажечь светик"...
---------- Post added at 19:28 ---------- Previous post was at 19:26 ----------
Также поставил Keil MDK 5.1 с торрентов.
Хоть мне IAR привычней. но лучше пока быть "как все" :)
Ewgeny7, Чем тебе сие не приглянулось ?
Что за код переносишь?Код:GPIOA->AFR[0]|=(1<<8)|(1<<12);
GPIOA->MODER &=~
GPIO_MODER_MODER2 |
GPIO_MODER_MODER3
;
GPIOA->MODER|=
GPIO_MODER_MODER2_1|
GPIO_MODER_MODER3_1
;
GPIOA->OSPEEDR|=
GPIO_OSPEEDER_OSPEEDR2|
GPIO_OSPEEDER_OSPEEDR3
;
Именно приведенное и используется, в макросах или без них, голым кодом.
А вот конструкции типа
уже не кошерны, нет таких определений для этого камня.Код:GPIOC-> CRH &= ~( GPIO_CRH_CNF9 | GPIO_CRH_CNF8 | GPIO_CRH_MODE9 | GPIO_CRH_MODE8 );
GPIOC-> CRH |= GPIO_CRH_MODE9_0 | GPIO_CRH_MODE8_0 ;
---------- Post added at 21:21 ---------- Previous post was at 21:20 ----------
Это пока не важно, на стадии щупания камня переносится всё, что под руку попадается :)
Дык и конфигурация пинов обширней стала . Если ранее в 10х ( твой код)
пины конфигурировались в одних регистрах, GPIOx_CRL для пинов 0-7 и GPIOx_CRH для пинов 8-15 , то в более новых GPIOx_MODER .
Ранее было по 4бита на пин , теперь по 2 бита в GPIOx_MODER и еще куча регистров на скорость, пуллапы и т.д.
dosikus, вот и я о том же, после 8-битников приходится копать даташиты неподеццки :)
GPIOx_MODER
2 бита на пин
00: Input (reset state) - Вход
01: General purpose output mode -Выход общего использования
10: Alternate function mode -Альтернативная функция
11: Analog mode -Аналоговый режим
GPIOx_OTYPER
1 бит на пин
0: Output push-pull (reset state) - пушпул
1: Output open-drain - С открытым стоком
GPIOx_OSPEEDR - скорость пинов
2 бита на пин
00: 400 kHz Very low speed
01: 2 MHz Low speed
10: 10 MHz Medium speed
11: 40 MHz High speed
GPIOx_PUPDR - пуллапы/ пулдаун
2 бита на пин
00: No pull-up, pull-down
01: Pull-up
10: Pull-down
11: Reserved
ну и альтернативная функция для пинов GPIOx_AFRх
---------- Post added at 21:43 ---------- Previous post was at 21:42 ----------
Трудно первые месяца 2, потом привыкаешь :biggrin:
И другие чипы уже кажутся ущербными .