본문 바로가기

AVR 8BIT

블루투스(FB155BC)를 이용한 CDS센서 값 USART 찍기 #include #include #include char rx; char str[50]; int ADC1; float ADC_F; interrupt[USART0_RXC]void usart0_rxc(void){ rx=UDR0; if(rx=='1')PORTC=1,delay_ms(300); if(rx=='2')PORTC=2,delay_ms(300); if(rx=='3')PORTC=4,delay_ms(300); if(rx=='4')PORTC=8,delay_ms(300); if(rx=='5')PORTC=16,delay_ms(300); if(rx=='6')PORTC=32,delay_ms(300); if(rx=='7')PORTC=64,delay_ms(300); if(rx=='8')PORTC=128,delay_ms(3.. 더보기
블루투스(FB155BC) LED 제어 안녕하세요 숭덕이 박제현입니다. 오늘 많이 삽질을 했습니다.. 저녁에 와서 요즘 스트레스로 어깨가 많이 결려서 하루종일 침대에 누워있다가 이렇게 하면 안되겠다 싶어 주말에 올리기로 한 블루투스(FB155BC) 글을 올립니다. 현재 새벽 4:03분이네요 컴파일은 코드비젼이고요 크리스탈은 14.7456 입니다. 이것때문에 많은 고생을 했다는........... STM32만 매일 하다가 오랜만에 AVR 잡으니까 힘드네요 AVR은 무조건 16Mhz 인줄알았습니다. ^^ 그래서 UBRR을 103으로 보레이트 9,600으로 했는데 아무리 해도 안되길래 이걸로 1시간 동안 고민했다는.....^^ 소스는 쉽다보니...책에서 레지스터값만 찾아서 공부하시면 쉬울듯 합니다.. SOURCE #include #include c.. 더보기
ATMEGA USART 이론 USART(Universal Synchronous and Asynchoronous serial Receiver and Transmitter) 기기간의 통신이나 컴퓨터와 기기와의 통신에서 시리얼 방식을 이용하면 적은 수의 선으로 장거리의 통신을 가능하게 한다. 시리얼 통신 방식은 크게 동기식 통신과 비동기식 통신으로 나누어지며, 고속의 테이터 전송을 위해서 동기식 통신을 이용하지만 송/수신 기기간의 동기를 맞춰야 하기 때문에 비동기식에 비해 제어가 어렵다. ATmega128은 동기 및 비동기 전송모드에서 전이중 통신이 가능한 USART를 2개 내장 PE0/PE1 그리고 PD2/PD3 이렇게 2개의 USART가 존재 한다. 또한 다음과 같은 특징을 갖는다. 1) 전이중 통신방식 2) 높은 정밀도의 보레이트 .. 더보기
하드웨어 설계 가스센서선정 1) 구하기 쉬워야 한다. 2) 사용 편의성 3 ) MQ-6 이란 반도체식 가스 센서 선정 - LPG, 부탄, 프로판, LNG, 담배연기 등의 검출이 가능하다. 전원부 전원단은 레귤레이터로 9V의 전압값을 5V로 낮추어 사용하였다. LM7805를 사용하였으며, 레귤레이터 주변에 캐패시터를 달아두어 전원노이즈 및 전원안정성을 보장하기 위해 사용하였다. MCU MCU 사진은 첨부하지 않도록 하겠다. 다들 이 분야에 일을 하시는 분이라면 Atmega128이라는 칩을 알것이라는 존재하에 작성하였으니 참고바랍니다. 제가 회사에서 사용하는 칩은 STM32 ARM이지만 대략적으로 집에서 가지고 노는 칩은 Atmega128입니다. 가스센서 가스 센서의 경우 5V 전압으로 연결하여 작동시켰습니다. 센서부분은.. 더보기
가스센서란? 가스 센서 등장 배경 - 우리의 생활환경에는 대단히 많은 종류의 위험한 가스가 존재하고 있어 최근 일반 가성, 업소, 공사장에서의 가스사고, 석유콤비나트, 탄광, 화학플랜트 등에서의 폭발사고 및 오염 공해 등이 잇따르고 있다. 인간의 감각기관으로는 위험 가스의 농도를 정량하거나 종류를 거의 판별할 수 없다. 이에 대응하기 위해 물질의 물리적, 화학적 성질을 이용한 가스센서가 개발되어 가스의 누설감지, 농도의 측정 기록, 경보 등에 사용되고 있다. 반도체식 가스 센서에 대해 - 반도체식 가스센서는 세라믹 반도체 표면에 가스가 접촉했을 때 일어나는 전기전도도의 변화를 이용하는 것이 많으며 대부분 대기 중에서 가열하여 사용되는 일이 많아 고온에서 안정한 금속산화물(세라믹스)이 주로 사용된다. 금속 산화물은 반.. 더보기
트래커 SOURCE 원본소스는 아닙니다. 참고로 사용하실 분만 가져가서 수정하셔서 사용해주세요. 온도센서도 함께 되어있는데 분해능을 정확하게 하지않았으며, 소스에서 수정 후 사용바랍니다. 퍼가실때는 필히 댓글 남겨주시기 바랍니다. #pragma opt- #include #include #include #asm .equ __lcd_port=0x15 ;PORTC #endasm #include char str[30]; int ADC_I; float ADC_F; void CH1(void); void CH2(void); void CH3(void); void CH4(void); void RC_Motor(int angle){ // angle : -90도 ~ +90도 int i; if(angle 90)angle= 90; i=(angle+.. 더보기
완성 --(2) 동영상으로 완성된 작품을 올립니다. 참고 하세요 소스와 회로도는 원하시는 분은 댓글을 남겨주세요. 모터의 파형도 있길래 이렇게 같이 올려드립니다. 필요없는 동영상이지만 나름 만들었다고 해서 이렇게 올리네요 라이터로 한 이유는 LED 빛을 줄 도구가 없어 옆에 간단한 라이터가 있어 한겁니다. 더보기
완성--(1) 팬뒤에 있는게 온도센서이다.. OPAMP로 증폭도 안하고 ㅡㅡ;; 회로를 그냥 대충했더니 아날로그 파형이 엉망진창이다 온도가 뻥튀기 된다 나중에 수정해야겠다...LM35DZ라는 센서다. FAN이다 컴퓨터에 남아 돌고 있길래 2개를 뽑아버렸다 처음에는 5V로 작동되는 줄 알고 연결하다 보니 작동이 안되네.. 스티커보니 12V 0.32A 12V 0.17A ㅡㅡ;; 두둥.......릴레이로 하다가 릴레이 잘못사서 그냥 2N2222로 제어 원래 CDS와 온도센서 FAN은 같이 한 작품인데 본래의 목적은 온실제어 시스템이 였다. 하우스를 설계하고 그 안에 온도센서와 습도센서를 놓고 습도에 따라 환풍을 해주며 온도에 따라 하우스 옆면에 아 이름은 까먹었다... 농업용전기가 저렴하기는 하지만 그래도 친환경적으로 만들.. 더보기
완성 --(1) 메인보드다 CPU는 Atmega128 MCU를 사용했으며 CLCD에 CDS 3개를 사용했다... 좀 더 확실하게 사진만 올리고 완성--(2)에 소스와 회로도를 첨부하고 자세한 설명을 거기서 하도록 하겠다. CDS다.. 빛을 전기로 바꿔주는 역활을 하는 센서로 3개 해가 뜨는 방향으로 두면 빛의 세기에 따라 모터가 회전한다. HS-311 모터이다. 5V로 제어하였으며 PWM으로 OCR 제어했다.... 동영상은 다음에 첨부하도록 하겠다.. 솔라셀이다. 빛을 전기로 바꿔주는 솔라셀 친환경적이다. 솔라셀 살 돈이 부족하여 싼거로 구매하여 붙여놨다. 배터리로 연결해놨는데 일단 모터에 붙여놨는데 모터가 동작하면서 떨어졌다....먼가 부족해 ^^ 회로도 ORCAD로 첨부해드리겠습니다. 소스 코드비젼으로 작성하였습니다.. 더보기
HS-311 http://blog.naver.com/jy7191?Redirect=Log&logNo=110087069302 참조 16Mhz = 16,000,000 hz 이고 서보 모터는 20ms = 0.02sec 단위로 신호를 넣어준다. 그리고 PWM 신호는 0.5ms ~ 2ms 사이의 길이를 넣어주면 0 ~ 180도의 각도로 이동한다. (책에는 1.5ms 에서 길거나 짧거나 라고 하는데 서보마다 다른듯.. 데이터 시트에도 없다 ㄱ-) 일단 8bit timer를 사용함으로 256 clock 마다 overflow를 발생시키며 16,000,000(clock/sec) / 256 = 62,500 times 1초에 62,500 번의 overflow가 발생하게 된다. 1/62500 = 0.000016 sec 이며 62500/50.. 더보기