일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- mcu
- IoT
- 모두의연구소
- TM4C123
- CCS
- 전자공학
- 임베디드시스템
- EMBEDDED
- 초보개발자
- 임베디드
- MAC OS
- PCB
- Embedded System
- TI
- TM4C123GXL
- 아트웍
- Programming
- easyeda
- 7 세그먼트
- RTOS
- 8051
- Arm
- Developer
- 마이컴
- GPIO
- St
- m4
- terminal
- bldc
- JLCPCB
- Today
- Total
목록분류 전체보기 (29)
Engineering Agit
◈ Embedded system의 SW를 설계하는 방식에는 크게 3가지가 있다. 첫번째는 machine language(0과 1로 이루어진 언어)로 프로그래밍하는 것이다. 이 방식은 system이 작동하기에 가장 효율적인 코드를 짤 수 있다는 장점이 있지만 그 방법이 어렵고 프로그램의 가독성이 좋지 못하다. 두번째는 assembly language이다. 이 방식은 machine language보다는 프로그래밍이 쉽고 가독성도 좋으며 한 줄 한 줄이 한 개의 instruction이므로 작동시간을 계산하는 것이 가능하다. 세번째는 C/C++과 같은 고급언어이다. 이번 session에서는 코딩시에는 C를 이용할 것이며 동작체크 시와 instruction 수행시간등을 체크하는 용도로 assembly langua..
#3 Function Description 각각의 GPIO port는 위의 두 그림과 같이 동일한 물리적인 block으로 분리되어있다. 우리가 다루는 TM4C123GH6PM의 경우에는 GPIO port가 6개 존재하므로 이러한 물리적인 GPIO block이 6개 존재한다. 주의할 것은 모든 포트의 핀들이 이것에 심어져있는 것이 아니라는 점인데, 어떤 핀들은 on-chip peripheral module들의 I/O signal 기능을 한다. 예를들어 GPIO 핀이 alternate HW function으로 사용되는 것은 아래의 표에서 찾아볼 수 있다. 1. Data control 위의 그림에서 GPIODATA reg.와 GPIODIR reg.가 이에 해당된다. 이들 register들은 GPIO의 작동 mo..
◈ 본문에 들어가기 앞서 GPIO는 1. Datasheet 2. edX강좌 내용 으로 구성된다. 이번 포스트에서는 GPIO 핀의 기본적인 특징을 언급할 것이다. #1 GPIO module features GPIO module은 6개의 물리적 GPIO block들로 이루어져있다. 이는 각각의 GPIO port(A~F)에 상응한다. Up to 43 GPIOs, depending on configuration Highly flexible pin muxing allows use as GPIO or one of several peripheral functions 5-V-tolerant in input configuration Ports A-G accessed through the Advanced Periphera..
1. CCS (Code Composer Studio) Texas Instruments의 IDE로 Eclipse기반이다. 대부분의 Code editing 작업과 complie, debugging 및 다운로드 작업을 이곳에서 진행한다. 2. TI Cloud Tools 링크: https://dev.ti.com/ TI DevTools [[item.type]] - [[item.title]] dev.ti.com Ti의 경우에는 STM사의 IDE와는 다르게 pin설정을 GUI로 보여주며 기본 코드를 구성할 수 있는 툴이 독립되어있다. 위의 링크를 들어가면 SysConfig 혹은 PinMUX라는 툴이 STM의 pin설정 툴과 같이 구성되어 있음을 알 수 있다. 윈도우의 경우 이 프로그램을 컴퓨터에 다운받아 오프라인으로..
#1 Intro 맥으로 8051을 개발하는 방식은 초기 환경 조성에 어려움이 있다. 이는 수많은 구글링과 테스팅으로 방식을 찾아야하기 때문이다. 또한 catalina부터는 32bit 프로그램을 지원하지 않기에 구글에서 찾은 방식이 적용안되는 경우가 허다하다. 따라서 이를 명심하고 정보를 찾아야한다. #2 1. SDCC (Small Device C Compiler) C/C++로 개발하는 상황에서는 이를 8051이 이해할 수 있는 HEX 파일로 변환해주는 compiler가 필요하다. 대게 이는 IDE(Integrated Development Environment)에서 가능하기에 신경을 크게 쓸 필요가 없었다. 8051의 경우에도 'mcu8051ide', 'uvision(KEIL)'등 ide가 존재한다. MS..
#1 Memory organization MCS-51계열의 칩은 program memory와 data memory 주소가 구분되어있는 구조(Harvard architecture)이다. 각각 64KB의 주소 공간을 갖는다. 1) Program memory 만일 EA pin이 GND에 연결되어 있으면, 모든 프로그램은 external memory에서 직접 fetch해온다. AT89S52의 경우에는 이 pin이 Vcc에 연결되어있을 경우 0x00 ~ 0x1fff까지의 주소는 internal memory에서 fetch해오고 0x2000 ~ 0xffff까지의 주소는 external memory에서 fetch해온다. 2) Data memory AT89S52에는 256 byte의 RAM이 on-chip으로 올라가 있..
Vcc, GND, Port 0(P0.0~P0.7), Port1(P1.0~P1.7), Port2(P2.0~P2.7), Port3(P3.0~P3.7), RST, ALE/PROG, PSEN, EA/Vpp, XTAL1, XTAL2 1. Port 0 (P0.0~P0.7) 'Port 0'은 8bit open drain 양방향 I/O port이다. Output으로 사용되면, 각 pin은 8개의 TTL(Transistor-Transistor Logic) input을 sink할 수 있다. Port 0 pin에 1s를 쓰면 high impedence input pin으로 쓸 수 있다. Port 0은 외부 program & data memory에 접근할 때 multiplexed low-order address/data bu..
MCS-51 계열(AKA 8051) 중에서 Atmel사(현 Microchip사)의 AT89S52를 이용하여 스터디한다. 1. AT89S52 특징 1) MCS-51(8051의 정식 명칭) 계열 제품과 호환 가능 2) 8KB의 ISP(In-System Programmable) Flash Memory 내장(1000번의 쓰기/지우기 가능) 3) 4.0V ~ 5.5V의 operating range를 갖음 4) 0Hz에서 33MHz 범위의 Fully-Static-Operation(원하는 클럭으로 고정 작동이 가능함) 5) 3 단계 프로그램 메모리 락 6) 256 x 8bit의 내장 RAM 7) 32개의 프로그램 가능한 I/O 라인 8) 3 개의 16bit Timer/Counter 9) 8 개의 interrupt s..