embeded/전자회로2025. 10. 18. 16:43

언제 샀는지도 기억안나는 부품..(!!)

언제나의 습관대로 2개씩 구매해놔서 한번 배터리 터질 각오로 시도

PCB에도 칩에도 MP1584라고 써있다.


배터리 쪽은 만충이라 8.0V

 

원래있던 셋팅(?) 으로는 7.7V가 나오고 있다. 전압이 올라가면 달라지려나?

 

암튼 올바른 위치(?)의 + 에서 약간 돌리고 나서

 

5.3V 정도로 나온다.

 

18650 2개짜리 홀더가 있으니, 3.7*2 = 7.4V 를 입력받아 서보모터를 돌리는게 목적인데

2A까진 히트싱크 없어도 되지만 3A는 있어야 한다고. 흐음.. 그럼 없어도 될 듯

[링크 : https://www.coupang.com/vp/products/298245200?itemId=939169411]

'embeded > 전자회로' 카테고리의 다른 글

로터리 엔코더  (0) 2025.10.22
스위칭 파워  (0) 2025.10.11
아 어쩐지 부품이 두개더라 -_-?  (0) 2025.10.08
1.8인치 TFT SPI 128x160  (0) 2025.10.07
열전대 써모커플러  (0) 2025.07.17
Posted by 구차니
embeded/Cortex-M3 STM2025. 10. 16. 18:29

stm32용 eeprom 에뮬레이션 패키지.

cube ide에서 packs 에서 설치가 될 줄 알았는데 없고, 수동으로 풀어서 넣어주어야 한다.

 

[링크 : https://community.st.com/t5/stm32cubemx-mcus/how-to-install-x-cube-eeprom-on-stm32cube/td-p/78773]

[링크 : https://community.st.com/t5/stm32cubemx-mcus/how-can-i-install-and-use-x-cube-eeprom-middleware-in/m-p/122931]

 

받고, 풀고

[링크 : https://www.st.com/en/embedded-software/x-cube-eeprom.html#tools-software]

 

적당히 때려넣어주면 끝

[링크 : https://blog.naver.com/chcbaram/223153496808]

'embeded > Cortex-M3 STM' 카테고리의 다른 글

stm32 adc + dma.. part 2?  (0) 2025.10.29
stm32 부트로더로 부팅 전환하기  (0) 2025.10.21
stm32 cpp  (0) 2025.08.08
stm32 eeprom emulation  (0) 2025.07.29
stm32f103ret flash program / erase 테스트  (0) 2025.07.28
Posted by 구차니
embeded/arduino(genuino)2025. 10. 14. 23:00

VIN은 외부에서 전원을 공급해 주는 것 같은데.. 여기서 끌어가는게 원래 안되어야 하는거 아닌가?

 

USB로 부터 전원을 받아 VUSB로 들어오고

 

auto selector에 의해서 VUSB가 +5V로 연결되는데, 레귤레이터를 거치지 않고 곳곳에 연결된다.

[링크 : https://docs.arduino.cc/resources/schematics/A000005-schematics.pdf]

[링크 : https://docs.arduino.cc/hardware/nano/]

 

다이오드는 30V 1A 까지 되는녀석같은데,

1A 이상 넣었다가는 파괴될수도 있으려나, 아니면 리밋만 1A 까지 걸리려나 모르겠다.

서보 모터 두세개 돌리기에는 1A로는 충분하지 않을듯 하니 별도 전원을 공급해야 겠네..

[링크 : https://www.digikey.kr/ko/products/detail/vishay-general-semiconductor-diodes-division/SS1P3L-M3-85A/4494959]

Posted by 구차니
embeded/전자회로2025. 10. 11. 22:19

LM7805와 같은 리니어 레귤레이터 말고 스위칭 레귤레이터를 찾았었는데

이 기회에 써봐야 할 듯.

 

LM2576

[링크 : https://jerry-rc.tistory.com/31]

 

LM2596

[링크 : https://itempage3.auction.co.kr/DetailView.aspx?itemno=E610667444]

 

LM317

[링크 : https://itempage3.auction.co.kr/DetailView.aspx?itemno=C441108509]

[링크 : https://m.blog.naver.com/ann_arbor/221359159774]

'embeded > 전자회로' 카테고리의 다른 글

로터리 엔코더  (0) 2025.10.22
스위칭 파워(스텝다운 컨버터) MP1584 사용  (0) 2025.10.18
아 어쩐지 부품이 두개더라 -_-?  (0) 2025.10.08
1.8인치 TFT SPI 128x160  (0) 2025.10.07
열전대 써모커플러  (0) 2025.07.17
Posted by 구차니
embeded/arduino(genuino)2025. 10. 11. 21:01

아두이노 나노 v3.0 이고, 아래의 셋팅으로 진행함

 

라이브러리 매니저에서 servo / arduino 를 설치하고

 

귀찮으니 D5/D6/D9/D10 옮겨가며 해보는걸로 하고, 일단은 날로 먹기 모드 ㅋㅋ

 

아래 코드를 대충 작성해서 넣어주면

#include <Servo.h>

Servo myservo[4];
String inputString = "";
bool stringComplete = false; 
unsigned char pwm_ch[4] = {5,6,9,10};
unsigned char pwm_val[4] = {127,127,127,127};

void setup() {
  // put your setup code here, to run once:
  Serial.begin(115200);
  Serial.println("Hello");
  
  inputString.reserve(200);

  for(int idx = 0;idx < 4;idx++)
  {
      myservo[idx].attach(pwm_ch[idx]);
      myservo[idx].write(pwm_val[idx]);
  }
}

void loop() {
  // put your main code here, to run repeatedly:
  if (stringComplete) {
    char data[64] = "";
    inputString.toCharArray(data, inputString.length());
    sscanf(data, "%d,%d,%d,%d\n",
      &(pwm_val[0]),
      &(pwm_val[1]),
      &(pwm_val[2]),
      &(pwm_val[3]));

    char res[64] = "";
    sprintf(res, "get %d %d %d %d\n", pwm_val[0], pwm_val[1], pwm_val[2], pwm_val[3]);
    Serial.print(res);

    Serial.print(inputString);
    // clear the string:
    inputString = "";
    stringComplete = false;

    for(int idx = 0;idx < 4;idx++)
    {
      if(pwm_val[idx] > 255) pwm_val[idx] = 255;
      if(pwm_val[idx] < 1) pwm_val[idx] = 1;
      myservo[idx].write(pwm_val[idx]); 
    }
  }
}

void serialEvent()
{
  while(Serial.available())
  {
    char inChar = (char)Serial.read();
    inputString += inChar;
    if (inChar == '\n')
    {
      stringComplete = true; 
    }
  }
}

 

최초 구동시 Hello가 나오고

콤마로 4개의 값을 넣어주면 된다. 개별 범위는 0~255

[링크 : https://docs.arduino.cc/learn/electronics/servo-motors/]

 

그나저나 pinMode 설정과 analogWrite() 로는 정상적으로 작동하지 않네.. 머가 문제일까?

int ledPin = 9;      // LED connected to digital pin 9
int analogPin = A0;  // potentiometer connected to analog pin A0
int val = 0;         // variable to store the read value

void setup() {
  pinMode(ledPin, OUTPUT);  // sets the pin as output
}

void loop() {
  val = analogRead(analogPin);  // read the input pin
  analogWrite(ledPin, val / 4); // analogRead values go from 0 to 1023, analogWrite values from 0 to 255
}

[링크 : https://support.arduino.cc/hc/en-us/articles/9350537961500-Use-PWM-output-with-Arduino]

 

그래서 찾아보니

servo는 대부분 pwm이 아니라는 이야기. 아.. 그렇지! pwm이 아니지?!

[링크 : https://forum.arduino.cc/t/analogwrite-vs-servo-write/370486/3]

[링크 : https://forum.arduino.cc/t/servo-with-analogwrite/438505/7]

'embeded > arduino(genuino)' 카테고리의 다른 글

아두이노 나노 전류  (0) 2025.10.14
아두이노 시리얼 이벤트 핸들러  (0) 2025.10.09
퀄컴 아두이노 인수  (0) 2025.10.08
아두이노 sd 카드  (0) 2025.08.24
skt-444 콘덴서 마이크 모듈 분해  (0) 2025.08.07
Posted by 구차니
embeded/arduino(genuino)2025. 10. 9. 22:44

예제로 맨날 폴링만 보다보니 인터럽트가 될거라 생각을 못했네..

/*
  SerialEvent occurs whenever a new data comes in the hardware serial RX. This
  routine is run between each time loop() runs, so using delay inside loop can
  delay response. Multiple bytes of data may be available.
*/
void serialEvent() {
  while (Serial.available()) {
    // get the new byte:
    char inChar = (char)Serial.read();
    // add it to the inputString:
    inputString += inChar;
    // if the incoming character is a newline, set a flag so the main loop can
    // do something about it:
    if (inChar == '\n') {
      stringComplete = true;
    }
  }
}

 

[링크 : https://docs.arduino.cc/built-in-examples/communication/SerialEvent]

[링크 : https://juahnpop.tistory.com/85]

[링크 : https://m.blog.naver.com/dhtpals32123/222270427302]

'embeded > arduino(genuino)' 카테고리의 다른 글

아두이노 나노 전류  (0) 2025.10.14
arduino nano로 4채널 pwm 출력하기  (0) 2025.10.11
퀄컴 아두이노 인수  (0) 2025.10.08
아두이노 sd 카드  (0) 2025.08.24
skt-444 콘덴서 마이크 모듈 분해  (0) 2025.08.07
Posted by 구차니
embeded/raspberry pi2025. 10. 9. 18:47

SPI LCD를 한번 써보고 싶어서(직접 드라이버 구현)

일단은 장치가 문제없나 확인부터 해보고 스펙 확인겸~ 남이 만든거 쓱쓱~

 

준비물

라즈베리 파이 피코 / 1.8 TFT SPI 128x160 이라고 써있는 LCD 보드

그냥 싸서 샀는데 color TFT LCD 이다.

 

라즈베리 파이 피코 핀아웃. 오랫만에 하니 헷갈려서 봤는데

정작 이건 참고 안하고 보드에 실크보고 해결 ㅋㅋ

[링크 : https://www.raspberrypi.com/documentation/microcontrollers/pico-series.html]

 

결선은 아래와 같이 하면 된다.

LED는 백라이트다. 뽑는다고 LCD 컨트롤러가 죽진 않는다.

TFT Board => Raspberry Pi Pico Pin
LED => 3v3(Out)
SCK => GP10
SDA => GP11
AO/DC => GP16
Reset => GP17
CS => GP18
GND => GND
VCC => VBUS 5V

[링크 : https://alastairmontgomery.medium.com/tft-display-st7735-with-micropython-ef48ecbfc278]

 

라즈베리 파이 피코

 

 

LCD

 

윈도우에서 thonny 깔고, tool - options - interpreter 에서 micropython (Raspberry Pi Pico) 선택

아래 포트는 확인하고 설정하던가 귀찮으면 try to detect port automatically 하면 끝.

[링크 : https://thonny.org/]

 

bootsel 누른채로 꽂아서 다음에서 다운로드 한 uf2 파일을 던져주면 끝

[링크 : https://www.raspberrypi.com/documentation/microcontrollers/micropython.html]

 

아래 프로젝트를 다운로드 해서

[링크 : https://github.com/alastairhm/micropython-st7735]

  [링크 : https://alastairmontgomery.medium.com/tft-display-st7735-with-micropython-ef48ecbfc278]

 

thonny 에서 view - files 하면 탐색기 뜨고 그걸로 업로드 하면 된다.

 

graphicstest 실행시 아래의 것들이 순차적으로 실행된다.

 

 

 

이거 하나 채워지는데 제법 오래걸린다.

 

 

tftbmp 실행시. 체감상 다 그려지는데 한 5초?

 

mandelbrot_tft 실행시. 그리고 표시하는지 한 10초 걸리는 듯

 

 


----

circuitpython usb fs 미지원?

[링크 : https://forums.raspberrypi.com/viewtopic.php?p=1812620#p1812620]

 

혹시나 해서 윈도우에서 thonny나 pip 안깔고 되나했는데

이래저래 귀찮을 듯 해서 포기하고 thonny 설치하는 걸로 해결 -_-

[링크 : https://mikeesto.medium.com/uploading-to-the-raspberry-pi-pico-without-thonny-53de1a10da30]

[링크 : https://github.com/dhylands/rshell]

'embeded > raspberry pi' 카테고리의 다른 글

라즈베리 파이 pwm 출력  (0) 2024.12.31
node-red  (0) 2024.11.21
cli 에서 chrome refresh 하기  (0) 2024.09.24
라즈베리 파이 gui 재시작(lxde)  (0) 2024.09.19
라즈베리 파이 gui 자동실행  (0) 2024.09.19
Posted by 구차니
embeded/전자회로2025. 10. 8. 22:21

이번에 하나를 산 거 같은데 정리하다 보니 두 개가 나와서 이력을 찾아보니

아니 왜 산걸 까먹고 또 산겨 -_-

머 덕분에 멀티 adc를 이용한 채널 확장도 해볼순 있겠네

 

'embeded > 전자회로' 카테고리의 다른 글

스위칭 파워(스텝다운 컨버터) MP1584 사용  (0) 2025.10.18
스위칭 파워  (0) 2025.10.11
1.8인치 TFT SPI 128x160  (0) 2025.10.07
열전대 써모커플러  (0) 2025.07.17
buzzer - 액티브 패시브  (0) 2025.07.15
Posted by 구차니
embeded/arduino(genuino)2025. 10. 8. 22:15

어떤 의미로 놀랍긴 한데.. wiring 기반으로 발전해왔고

라즈베리에서도 wiring을 잘 썼는데

퀄컴이 아두이노 인수하면서 어떻게 될지가 좀 조심스러워진다.

[링크 : https://news.hada.io/topic?id=23502]

[링크 : https://www.techpowerup.com/341673/qualcomm-to-acquire-arduino]

 

눈에 띄는건.. Adreno GPU 3D 가속기와 카메라 2개 가능, cortex-M33 160Mhz 별도 장착.

Core
Qualcomm Dragonwing™ QRB2210
Includes the powerful Qualcomm Dragonwing™ QRB2210 processor featuring:
Quad-core Arm® Cortex®-A53 @ 2.0 GHz
Adreno GPU 3D graphics accelerator
2x ISP (13 MP + 13 MP or 25 MP) @ 30 fps
Overview
Microcontroller
STM32U585 Arm® Cortex®-M33 32-bit MCU
The UNO Q integrates the STM32U585 microcontroller featuring:
Arm® Cortex®-M33 up to 160 MHz
2 MB flash memory
786 kB SRAM
Floating Point Unit

[링크 : https://docs.arduino.cc/hardware/uno-q/]
[링크 : https://www.arduino.cc/product-uno-q] UNO Q

 

가격이 낮아질것 같진 않지만.. 일단 아두이노가 라즈베리를 타겟으로 하는 가격을 보여주는 듯.

[링크 : https://store-usa.arduino.cc/products/uno-q]

 

 

'embeded > arduino(genuino)' 카테고리의 다른 글

arduino nano로 4채널 pwm 출력하기  (0) 2025.10.11
아두이노 시리얼 이벤트 핸들러  (0) 2025.10.09
아두이노 sd 카드  (0) 2025.08.24
skt-444 콘덴서 마이크 모듈 분해  (0) 2025.08.07
HW-504 이상해..  (0) 2025.08.02
Posted by 구차니
embeded/전자회로2025. 10. 7. 23:31

'embeded > 전자회로' 카테고리의 다른 글

스위칭 파워  (0) 2025.10.11
아 어쩐지 부품이 두개더라 -_-?  (0) 2025.10.08
열전대 써모커플러  (0) 2025.07.17
buzzer - 액티브 패시브  (0) 2025.07.15
rheostat ?  (0) 2024.07.25
Posted by 구차니