목록ARM (35)
배우고픈 공돌이
출처 : http://mikrocontroller.bplaced.net/wordpress/?page_id=2272 discovery board - audio codex : cs43l22 - i2c 연결- fat-fs : micro usb memory - USB HOST- MSC 사용- DMA : usb -> codex - spi? i2c? (어떤 방식인지 모르겠다.)- mp3를 helix로 디코드 : mp3 압축을 풀어 PCM 데이터 형식으로 고친다.
- main.c -#include "stm32f4xx_conf.h" GPIO_InitTypeDef GPIO_InitStructure;void Delay(__IO uint32_t nCount); int main(void){ /* GPIOD Periph clock enable */ RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOD, ENABLE); /* Configure PD12, PD13, PD14 and PD15 in output pushpull mode */ GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12 | GPIO_Pin_13| GPIO_Pin_14| GPIO_Pin_15; GPIO_InitStructure.GPIO_Mode = GPIO_Mod..
개발 프로그램에서 컴파일러(gcc)와 링크 디바이스(J-link or ST-link)만 설정하면 타겟에 다운로드까지 된다. 다만, 프로젝트 속성에서 경로와 심볼을 잘 적용해야하며 IAR, Keil, TurboSTUDIO 등의 CMSIS 드라이버 버젼을 사용에 맞게 선택해야한다. 이클립스 프로젝스 속성 Embitz 프로젝트 속성
개념 ARM은 Advanced RISC Machine의 약어(略語)이다. CISC과는 다르게 RISC는 CPU에서 동작하는 대부분이 몇개의 명령어 만으로 가능하다. 또한 고정된 길이의 명령어를 사용하기에 여러개의 명령처리가 가능하다는 점이 강점이다. ※ 고정된 명령어이기 때문에 디코딩의 속도가 빠르며, 각 명령어가 한 클럭에 동기되기 때문에 파이프라인에 최적화가 된다. 하지만, CISC에 비해 컴파일 과정이 복잡하고 고정된 명령어의 길이 때문에 코드효율이 낮다. 아키텍처 구조 하버드 아키텍처출처 : 위키백과 아키텍처 구조는 폰 노이만과 하버드로 나뉜다. 폰 노이만의 경우는 프로세서와 모든 디바이스 메모리가 공통의 데이터 버스, 어드레스 버스, 제어 버스를 사용하여 하드웨어를 재배치할 필요가 없고 범용성이..