EMBEDED/STM (CM3,4,7...) ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ
11 ๊ฐœ์˜ ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

[STM] MCU SPI ์„ธํŒ…

๋ฐ์ดํ„ฐ ํ”„๋ ˆ์ž„ ํฌ๋ฉง์ด ๋ชจํ† ๋กœ๋ผ๋‹ค. ์ด๊ฑด ๊ณ ์ •์ด๋‹ค. ์™œ? SPI๋Š” ๋ชจํ† ๋กœ๋ผ๊ฐ€ ๋งŒ๋“ค์—ˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. Data Size๋Š” 8 Bit (1 Byte), 16 Bit (2 Byte) ๋‘˜ ์ค‘ ํ•˜๋‚˜๋ฅผ ์„ ํƒํ•˜๋ฉด ๋˜๊ฒ ๋‹ค. ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ด๊ณ  ๋ฐ›๊ณ ์ž ํ•˜๋Š” ์Šฌ๋ ˆ์ด๋ธŒ ๋Œ€์ƒ์„ ํ™•์ธ ํ›„ ์„ค์ •ํ•˜๋ฉด ๋˜๊ฒ ๋‹ค. ์œ„์˜ Prescaler๋ฅผ ์„ธํŒ…ํ•˜๋ฉด Baud Rate๋Š” ์ž๋™์œผ๋กœ ๊ณ„์‚ฐ๋˜์–ด ํ‘œ์‹œ๋œ๋‹ค. Clock Polarity (CPOL)์€ Low, High ์ค‘ ์„ ํƒํ•˜๋ฉด ๋œ๋‹ค. SPI_CR1 ๋ ˆ์ง€์Šคํ„ฐ์˜ Bit 1์— ์œ„์น˜ํ•˜๊ณ  ์žˆ๋Š”๋ฐ, ๊ฐ’์ด 0์ด๋ฉด rising edge์— ๋ฐ์ดํ„ฐ๋ฅผ ์ทจ๋“ํ•œ๋‹ค. ๊ฐ’์ด 1์ด๋ฉด ๋ฐ˜๋Œ€๋กœ falling edge์— ๋ฐ์ดํ„ฐ๋ฅผ ์ทจ๋“ํ•œ๋‹ค. Clock Phase๋Š” 1 Edge, 2 Edge ์ค‘ ์„ ํƒํ•˜์—ฌ ์„ค์ •ํ•œ๋‹ค. SPI_CR1 ๋ ˆ์ง€์Šคํ„ฐ์˜ B..

[STM] STM32F103์œผ๋กœ I2C ์ธํ„ฐํŽ˜์ด์Šค EEPROM ์ œ์–ดํ•˜๊ธฐ

MCU๋กœ EEPROM์— ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ณ  ๋ถˆ๋Ÿฌ์˜ค๋Š” ๊ณผ์ •์„ ํ•ด๋ณผ ๊ฒƒ์ด๋‹ค. MCU๋Š” ST์˜ STM32F103์„ ์‚ฌ์šฉํ•˜์˜€๊ณ , EEPROM์€ I2C I/F์ธ MICROCHIP์˜ 24LC256์„ ์‚ฌ์šฉํ•˜์˜€๋‹ค. ์šฉ๋Ÿ‰์ด 256k-bit์ธ ๋…€์„์ด๋‹ค. 1. I2C๋ž€? I2C ํฌ์ŠคํŒ…์œผ๋กœ ๊ฐ€๊ธฐ (๋Š” ๋‹ค์Œ์—..) 1.1. 24LC256 ์‚ฌ์šฉํ•œ 24LC256์€ SOIC 8ํ•€ ํŒจํ‚ค์ง€์ธ ๋…€์„์œผ๋กœ ํ•€๋งต์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค. A0,1,2๊ฐ€ ๊ฐ€๋ณ€ํ•  ์ˆ˜ ์žˆ๋Š” ๋””๋ฐ”์ด์Šค์˜ ์–ด๋“œ๋ ˆ์Šค ํ•€๋“ค์ด๋‹ค. ์—ฌ๊ธฐ์„œ๋Š” ๋ชจ๋‘ 0์œผ๋กœ ๋งŒ๋“ค์–ด์ค„ ๊ฒƒ์ด๋‹ค. 5, 6๋ฒˆ์ด I2Cํ•€์ด๋‹ค. WP๋Š” ์‚ฌ์šฉํ•˜์ง€ ์•Š์„ ๊ฒƒ์ด๋‹ค. VCC๋กœ ํ’€์—… ์„ธํŒ…ํ•˜๋ฉด ์“ฐ๊ธฐ๋ฅผ ๋ชปํ•˜๊ณ  ์ฝ๊ธฐ๋งŒ ๊ฐ€๋Šฅํ•˜๊ธฐ์— ์ดˆ๊ธฐ์— ๋ฐ์ดํ„ฐ๊ฐ€ ์•„๋ฌด๊ฒƒ๋„ ์—†๋Š”๋ฐ ํ’€์—…ํ•˜๋ฉด ๋ฉฉ๊ฝ์ด๊ฐ€ ๋  ์ˆ˜ ์žˆ๋‹ค. GND๋กœ ๋ฌถ์–ด์ฃผ๋ฉด ๋ง˜๋Œ€๋กœ ์“ฐ๊ณ  ์ง€์šฐ๊ณ  ํ•  ์ˆ˜..