================================ Outline ====================================
Packet 전달 함수 만들기
- AX-12+ Baud Rate 값 변경
- Packet 전달 함수
----------------------------------------------------------------------------
/*
모터가 300도와 0도 사이를 오가며 지속적으로 회전시키려면 모터 회전 후 딜레이 값을 0.865초를 주면 된다.
_delay_ms(865);
*/
AX-12+ Baud Rate 값 변경
Baud Rate를 변경해 주기 위해서는 instruction에 WRITE_DATA(#3), Length 값에 4, Write Address 값은 4이다.
바꿔주고자하는 Baud Rate는 9,600bps로 한다.
207은 Hex값으로 0xCF이다.
AX-12+와 통신을 위해 AX-12+의 Baud Rate를 바꿔주고 난 후 ATmega2560의 Baud Rate도 변경해 주어야 한다.
103의 hexa값은 0x67이다.
그리하여 코드는 아래와 같다.
|
Packet 전달 함수
주의할 점은 check sum의 값이다. parameter의 개수의 따라 인자의 갯수와 check sum 인자의 개수가 바뀜으로 주의해야 한다.
void PacketTX_P1(unsigned char ID, unsigned char Length, unsigned char Instruction, unsigned char cmd, unsigned char para1) |
================================ Outline ====================================
Server socket 프로그램
- PORT 번호
- 컴파일을 위한 makefile
/*** 소스 ***/
----------------------------------------------------------------------------
PORT 번호
예약된 PORT 번호는 1 - 1,024이며 system에서 사용한다.
//가장 흔히 사용하는 web의 PORT #는 80이다.
일반적으로는 995까지는 시스템에서 사용한다. bind함수를 사용하여 socket정보를 엮을 때 1024내에 번호를 설정하면 오류가 난다.
//사용 가능한 PORT 번호는 0 - 65,535(unsigned 2 byte)까지이다.
컴파일을 위한 makefile
make 명령어를 사용하여 컴파일이 가능하도록 만들어 보자.
vi편집기 기본 세팅문서로 들어간다.
# vi /home/newind2000/.vimrc
vi편집기의 기본세팅에 스페이스가 입력되는 설정을 주석처리 해주자. 주석처리는 “ 로 해준다.
vi makefile을 입력하여 makefile을 만든다.
아래와 같이 편집한다.
//골뱅이(@)가 없으면 명령어인 echo test가 같이 출력 됨으로 골뱅이 표시를 넣어준다.
make를 치면 아래와 같이 출력된다.
이것을 적용하여,
server : server.c smartsock.h
gcc -lm -o server server.c
다음과 같이 명령어를 넣어주면 ‘make'만 쳐도 컴파일이 된다.
! 명령어(위에서는 gcc)에서는 이전에는 TAB키를 사용하여 띄워주어야 함을 명심하자.
// 위에 놈은 혼자 심심해서 한거여유. 밑에 소스 내용 참고 하시씨요. *'-'*
/*** 소스 ***/
<server.c>
#include "smartsock.h" |
<smartsock.h>
#ifndef __SMARTSOCK_H__ |
CC = gcc |
'코스웨어 > 15년 스마트컨트롤러' 카테고리의 다른 글
20150720-31번-차윤도-ARM bootcode분석,Datasheet 중간프로젝트 (7) | 2015.07.20 |
---|---|
2015.07.17(금) 주재민 -스테핑 모터,ARM Compiler 설치,Cygwin 설치 (2) | 2015.07.17 |
20150716 - 26번 임현수 ADConverter, ADCompare 서보모터제어, ARM(AT91SAM7S256), TCP헤더 캡처용 패킷애널라이저 (6) | 2015.07.17 |
20150714 - 23번 이량경 소켓 1:1 채팅 {server, client} / GoalPosition (7) | 2015.07.15 |
20150710 - 21 - 여지윤 - AX-12+서보모터 /소켓네트워크(Server,Client) (4) | 2015.07.10 |
20150709 - 20번 엄민웅 [AVR]AX-12 (서브 모터제어) / [C#]채팅프로그램실습 (3) | 2015.07.09 |
20150708 - 19번 안향진 AVR-AVR studio_AX-12+(스테핑모터) / C#-채팅프로그램 실습 / 네트워크-joinc 소켓프로그램 (2) | 2015.07.08 |
20150707 - 18번 안해운 AVR toolchain & C# attribute (4) | 2015.07.07 |