小屋創作

日誌2016-11-11 03:47

【日常生活】今天是1111唷!-之我的期中危險了T口T

作者:羊羊

是什麼節日就不說了

是說,
終於不用一個人過了耶

前幾天一個網頁遊戲,結算前功勳蠻有意思的。


話說,
昨天有一個期中是大刀教授考試,
第一題20%,第二題30%,剩於不談了,我不會。

我很努力的看了同學錄影的教學。
又努力的一邊背程式碼。
希望能拿個一題,有少少分數....

你要知道,有50%的人會拿0分。
只要你分數不是0,PASS機率就會大幅提高。

這是可以成功的寫法:
------程式碼開始--------
main.h
#ifndef SOURCES_MAIN_H_
#define SOURCES_MAIN_H_
#ifndef uint32_t
typedef __UINT32_TYPE__ uint32_t;
#endif
#define SIM_SCGC5 *(volatile uint32_t *)0x40048038U
#define GPIOA_PDDR *(volatile uint32_t *)0x400FF014U
#define GPIOA_PSOR *(volatile uint32_t *)0x400FF004U
#define GPIOA_PCOR *(volatile uint32_t *)0x400FF008U
#define PORTA_PCR2 *(volatile uint32_t *)0x40049008U
#define PORTA_PCR1 *(volatile uint32_t *)0x40049004U
#define GPIOD_PDDR *(volatile uint32_t *)0x400FF0D4U
#define GPIOD_PSOR *(volatile uint32_t *)0x400FF0C4U
#define GPIOD_PCOR *(volatile uint32_t *)0x400FF0C8U
#define PORTD_PCR5 *(volatile uint32_t *)0x4004C014U
#define GPIOD_PTOR *(volatile uint32_t *)0x400FF0CCU
#define GPIOA_PTOR *(volatile uint32_t *)0x400FF00CU
#endif /* SOURCES_MAIN_H_ */

main.c
#include "main.h"
void Delay(int n)
{
for(int i = 0;i<n;i++)
{
__asm("nop");
}
}
void setup()
{
SIM_SCGC5 = 0x00001200U;
GPIOA_PDDR = 0x00000006U;
GPIOD_PDDR = 0x00000020U;
PORTA_PCR2 = 0x00000124U;
PORTA_PCR1 = 0x00000124U;
PORTD_PCR5 = 0x00000124U;
}
void loop()
{
while(1)
{
GPIOA_PCOR = 0x00000002U; //RED on
Delay(1000000);
GPIOA_PSOR = 0x00000002U;//RED off
Delay(1000000);
GPIOA_PCOR = 0x00000004U;//GREEN on
Delay(1000000);
GPIOA_PSOR = 0x00000004U;//GREEN off
Delay(1000000);
GPIOD_PCOR = 0x00000020U;//BLUE on
Delay(1000000);
GPIOD_PSOR = 0x00000020U;//BLUE off
Delay(1000000);
GPIOA_PCOR = 0x00000006U; //YELLOW on
Delay(1000000);
GPIOA_PSOR = 0x00000006U;//YELLOW off
Delay(1000000);
/*cyan-blue 青色 on*/
GPIOD_PCOR = 0x00000020U;
GPIOA_PCOR = 0x00000004U;
Delay(1000000);
/*cyan-blue 青色 off*/
GPIOD_PSOR = 0x00000020U;
GPIOA_PSOR = 0x00000004U;
Delay(1000000);
/*PURPLE on*/
GPIOD_PCOR = 0x00000020U;
GPIOA_PCOR = 0x00000002U;
Delay(1000000);
/*PURPLE off*/
GPIOD_PSOR = 0x00000020U;
GPIOA_PSOR = 0x00000002U;
Delay(1000000);
/*WHITE on*/
GPIOA_PCOR = 0x00000002U;
GPIOA_PCOR = 0x00000004U;
GPIOD_PCOR = 0x00000020U;
Delay(1000000);
/*WHITE off*/
GPIOA_PSOR = 0x00000002U;
GPIOA_PSOR = 0x00000004U;
GPIOD_PSOR = 0x00000020U;
Delay(1000000);
}
}
int main(void)
{
setup();
loop();
return 0;
}
------程式碼結束--------
基本上裡面結構要記起來....
然後,原則上只有0x(8個16進制資料)U
EX: 0x00000020U、0x400FF0C4U....
這邊不用背,可以查表。

不過剩下原則上都要......



這一題占了30%,我沒有寫對。

我是這麼寫的....
------程式碼開始--------
main.h
#ifndef SOURCES_MAIN_H_
#define SOURCES_MAIN_H_
#ifndef uint32_t
typedef __UINT32_TYPE__ uint32_t;
#endif
#define SIM_SCGC5 *(volatile uint32_t *)=0x40048038U
#define GPIOA_PDDR *(volatile uint32_t *)=0x400FF014U
#define GPIOA_PSOR *(volatile uint32_t *)=0x400FF004U
#define GPIOA_PCOR *(volatile uint32_t *)=0x400FF008U
#define PORTA_PCR2 *(volatile uint32_t *)=0x40049008U
#define PORTA_PCR1 *(volatile uint32_t *)=0x40049004U
#define GPIOD_PDDR *(volatile uint32_t *)=0x400FF0D4U
#define GPIOD_PSOR *(volatile uint32_t *)=0x400FF0C4U
#define GPIOD_PCOR *(volatile uint32_t *)=0x400FF0C8U
#define PORTD_PCR5 *(volatile uint32_t *)=0x4004C014U
#define GPIOD_PTOR *(volatile uint32_t *)=0x400FF0CCU
#define GPIOA_PTOR *(volatile uint32_t *)=0x400FF00CU
#endif /* SOURCES_MAIN_H_ */

main.c
#include "main.h"
void Delay(int n)
{
for(int i = 0;i<n;i++)
{
__asm("nop");
}
}
void setup()
{
SIM_SCGC5 = 0x00001200U;
GPIOA_PDDR = 0x00000006U;
GPIOD_PDDR = 0x00000020U;
PORTA_PCR2 = 0x00000124U;
PORTA_PCR1 = 0x00000124U;
PORTD_PCR5 = 0x00000124U;
}
void loop()
{
while(1)
{
GPIOA_PCOR = 0x00000002U; //RED on
Delay(1000000);
GPIOA_PSOR = 0x00000002U;//RED off
Delay(1000000);
GPIOA_PCOR = 0x00000004U;//GREEN on
Delay(1000000);
GPIOA_PSOR = 0x00000004U;//GREEN off
Delay(1000000);
GPIOD_PCOR = 0x00000020U;//BLUE on
Delay(1000000);
GPIOD_PSOR = 0x00000020U;//BLUE off
Delay(1000000);
GPIOA_PCOR = 0x00000006U; //YELLOW on
Delay(1000000);
GPIOA_PSOR = 0x00000006U;//YELLOW off
Delay(1000000);
/*cyan-blue 青色 on*/
GPIOD_PCOR = 0x00000020U;
GPIOA_PCOR = 0x00000004U;
Delay(1000000);
/*cyan-blue 青色 off*/
GPIOD_PSOR = 0x00000020U;
GPIOA_PSOR = 0x00000004U;
Delay(1000000);
/*PURPLE on*/
GPIOD_PCOR = 0x00000020U;
GPIOA_PCOR = 0x00000002U;
Delay(1000000);
/*PURPLE off*/
GPIOD_PSOR = 0x00000020U;
GPIOA_PSOR = 0x00000002U;
Delay(1000000);
/*WHITE on*/
GPIOA_PCOR = 0x00000002U;
GPIOA_PCOR = 0x00000004U;
GPIOD_PCOR = 0x00000020U;
Delay(1000000);
/*WHITE off*/
GPIOA_PSOR = 0x00000002U;
GPIOA_PSOR = 0x00000004U;
GPIOD_PSOR = 0x00000020U;
Delay(1000000);
}
}
int main(void)
{
setup();
loop();
return 0;
}
------程式碼結束--------
好啦,多一個等於。
等等,好像不只一個....

反正就錯一個小地方....
英文不好,看error訊息也看不懂,哭哭


不過,
天無絕人之路。

就在我準備加入零分俱樂部之前...

來看一下第一題好了(?

好歹我也是一個Exl從初學一步一步慢慢查網路,查到寫出分析器耶....
關於Exl的考題,
我....應該能解決吧?

好的,
看到有點熟悉的東西。

老師給了數百、數千個數值,然後這些連續不規則數值,
可以用圖表呈現一個波型
大概是,這個感覺。
不過線本身不是那麼平滑....
線上是無數起伏堆疊而成
像是這樣吧(有點畢卡索抱歉

要把此波型進行【MA100】濾波

沒關係,
我知道你們聽不懂MA100,因為我當時也看不懂。

我看看...
100,又要濾波....

是把那數百、數千,彼此之間相鄰數值做一個平均嗎?
所以我就把他們,彼此相連之間以100為平均單位。
全部重新打一次函數出來。

出來之後,波型較平穩一點了。

然後也不管是不是對了,
有覺悟就可以去賭了!


孤注一擲!


答對了阿!!!

雖然拿不到30%,20%也不錯....

我覺得有希望明年不用再來見他了!



那麼,
本篇先這樣了,我要繼續打期中報告了

15

7

LINE 分享

相關創作

【翻譯日誌】我對老師的感恩以如滔滔江水連綿不絕,如黃河氾濫一發不可收拾

【日誌】入手了一台便宜的低功耗筆電

悲報 漫畫更新要延了

留言

開啟 APP

face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】