1. 논리회로
멀티플렉서(multiplexer)
여러개의 신호선중 하나의 신호선을 출력하는 조합논리회로
진리표(4×1)
회로도
선택선과 연결된 AND Gate는 하나의 입력만 0이 되더라도 출력이 0이 된다.
그래서 선택선은 디코더의 논리회로와 비슷하다.
출력전 OR Gate는 다른입력이 0이더라도 하나의입력이 1이 되면 출력이 1이된다.
즉 선택선에 의해 나머지출력은 0이 되지만 선택선으로 선택된 신호는 F로 출력이 된다.
2. C언어
Delete 함수
NODE *delete(char item, NODE *list) |
follow 에 current를 저장후 current는 다음 연결리스트로 이동하였기에 검색된 위치의 주소가 current 그 전의 주소가 follow가 된다.
만일 current가 NULL이라면 검색된 문자가 없다 라고 표시한다.
아래 3가지 조건은 각각
첫글자가 해당될 때 앞부분 삭제를 위한 소스.
마지막 글자가 해당될 때 삭제를 위한 소스.
이외의 글자가 해당될 때 삭제를 위한 소스가 된다.
마지막으로 free함수를 사용하여 할당된 메모리를 제거한다.
3. 임베디드
ADC 조도센서
보일러같이 생긴 조도센서(정확히 이름은 CdS로 황화카드뮴 이라고 한다)
를 이용하여 ADC를 확인하는 실습을 하다.
그 전에 ADC를 사용하기 위한 타이밍도를 이해해야 한다.
위의 타이밍도를 보고 소스코드를 입력하여
unsigned int ADC_Run()
{
ADC_CR = 1 << START;
while(0 == (ADC_SR & (1 << DRDY))); //waiting conversion time
return (ADC_LCDR & 0x3FF);
}
와 같이 소스코드를 입력한다.
while문은 AD변환이 완료될때 까지 시간을 지연해 주는 것이다.
Conversion Time
아날로그 신호를 디지털로 바꾸기 위해 시간이 걸리게 된다.
그 시간을 Conversion Time(변환시간) 이라고 한다.
카운터 회로와 비교기를 이용하여 입력된 아날로그 신호를 디지털로 바꾸게 하기 때문에
카운터를 하는 시간이 있다.
ADC_Init(); |
ADC를 초기화 하기 위한 함수이다 adc.c에 정의되어 있다.
while문으로 반복하여 지속적으로 ad변환을 하여 character lcd에 출력을 한다.
너무 빠른 숫자변환을 방지하기 위해 for 문을 이용하여 시간적 지연을 시켰다.
휴대폰의 플래시라이트를 이용하여 조도센서에 비추면 캐릭터lcd에 1023이 찍히는 것을 확인 할 수 있다.
'코스웨어 > 13년 스마트컨트롤러' 카테고리의 다른 글
hexaview로 파일 내용 출력 _ 진종영 (0) | 2013.05.03 |
---|---|
헥사뷰어_석주원 (0) | 2013.05.03 |
Hexa viewer 과제 - 변준식 (0) | 2013.05.03 |
[과제제출]hexaview 0503 - 이수현 (0) | 2013.05.03 |
파일 헥사뷰 조유진 (0) | 2013.05.03 |
2013.05.03_헥사뷰_파일출력_김성엽 (0) | 2013.05.03 |
[20130502] 숙제。파일을 헥사뷰로 출력하기。문남경 (0) | 2013.05.02 |
130502목 정리 (12) | 2013.05.02 |